This post is just my ramblings about why I recommend you learn C++
even in 2018
:
(1) C++
is a system programming language, and the program implemented in C++
is compiled into machine instructions. IMHO, every genuine software engineer should be acquainted with Operating System, hardware architecture, etc, and learning C++
can give you the opportunity to dive into these stuff. E.g., when you come across the “memory order”, you need to google a lot to really understand it, but it is indeed rewarding.
(2) C++
is actively evolving (C++03
, C++11
, C++14
, C++17
…). Before C++ 11
, i.e., modern C++
, the main selling point of C++
is object-oriented and powerful template. But after that, C++
introduces a lot features, and it becomes more and more complicated. E.g., the code may has different behaviors between C++14
and C++17
(please refer here) . Why do we bother to learn it since it is so intricate? Personally, I think it will give us a huge confidence: if you can harness C++
proficiently, is there any other language you can’t master?
(3) Because C++
is an old but popular language, there are fruitful resource which others can’t compete. From Open Source code to classical books, you can have so many references to help polishing your code skills. BTW, reading some works is a really enjoyment, not only assist you improve programming, but also teach how to write a good essay.
Hope this small article can let you take into learning C++
when you are free!