What technologies do C++ programmers need to know? [closed]

As for every language, I believe there are three interconnected levels of knowledge :

  1. Master your language. Every programmer should (do what it takes to) master the syntax. Good references to achieve this are :
    • The C++ Programming Language by Bjarne Stroustrup.
    • Effective C++ series by Scott Meyers.
  2. Know your libraries extensively.
    • STL is definitely a must as it has been included in the C++ Standard Library, so knowing it is very close to point 1 : you have to master it.
    • Knowing boost can be very interesting, as a multi-platform and generic library.
    • Know the libraries you are supposed to work with, whether it is Win32 API, OCCI, XPCOM or UNO (just a few examples here). No need to know a database library if you develop purely graphic components…
  3. Develop your knowledge of patterns. Cannot avoid Design Patterns: Elements of Reusable Object-Oriented Software here…

So, my answer to your updated question would be : know your language, know your platform, know your domain. I think there is enough work by itself here, especially in C++. It’s an evergoing work that should never be overlooked.

Leave a Comment