This book aims at teaching people how to program and uses the programming language C++ for that. It is mainly written for people who have never programmed before and therefore does not require previous knowledge. It may, however, also be of great use to all those who are only new to C++ and have experience in another language.

About Programming

Programming is the art of instructing a computer to do whatever one wants it to do.

The tools that we use for this are called programming languages. They exist in many various forms. Some of them only serve very special purposes while others are as general as possible; Some reflect how the underlying machine works while others are closer to pure mathematics. Some are designed to be extremely fast while others are designed to be extremely convenient to use.

What all serious programming languages share is the concept of formalizing an idea - an algorithm - in a way such that every part of it is completely unambiguous.

About C++

C++ is a programing language that was designed to unite the performance of the C programming language with high-level abstractions while staying backwards-compatible. Both properties have been preserved to this day: Few languages are able to take on the performance of C++, and most of them are on a lower abstraction-level.

The price that C++ had to pay for this is that the language is relatively complex and offers some dangerous spots that are best avoided.

What we gain in return is a language that is extremely powerful, extremely fast and, if used correctly, pretty convenient.