June 21, 2019

Some reasons why C++ is great


In contrast to a common misconception C++ is a beginner friendly language. The only thing what the user should avoid is to try to understand C++ in all the details. Because the amount of information is large and new features are added quite often. The better idea is to solve a certain problem and ask how this can be realized in C++. Let me give an example. The user likes to program a computer game which is working with OpenGL. The game runs two threads in parallel, has a 3d graphics, is using object oriented programming and should use the current CPU efficient. Now the user has to search for C++ standards which is supporting these requirements and he will find them.
This problem seems to be trivial, but many other programming language doesn't support the user in this way. For example, if the user would like to realize the project in Python he will have the problem that the support for multi-threading is not that great. He won't find in the language a powerful support for threads. And if he is trying to program the game in plain C he will have problems to find support for object oriented features like classes and inheritance.
It's rare or even not possible that somebody likes to program a certain application and get's no support from the C++ community. All the operating system libraries have at least a C++ interface and the amount of C++ language standards is huge. No matter if the user tries to read files, uses a database, likes to play a soundfile or spawn a process to a cpu cluster he can do so in C++ easily. The disadvantage of a general purpose programming language is, that learning C++ doesn't make much sense. Because the amount of libraries is too large, and the possible applications somebody can write in C++ is more than 100.