C++’s Strengths Keep it Relevant in an Age of Code Bootcamps

by Jun 5, 2018

 

There is an interesting post on Medium aiming to inspire students why to learn C++. Its main point is that learning C++ teaches fundamental computer science concepts: memory management, compile-time vs run-time, polymorphism implementation, iterators and containers, and more.  Unfortunately, it phrases itself in an exclusionary manner. While C++ is not the only language where you can learn these fundamentals, it is one of the most popular.

However, with dozens of coding "boot camps" popping up and charging thousands of dollars for the promise of a quick path to a software development career, why should you consider learning a complex language like C++?

Here are three key reasons to learn and use C++ today:

 

  1. Technical Foundation
  2. It's Widely Used
  3. Support and Future

 

Let’s look at these in order.

Technical Foundation

C++ is one of the most common languages used to teach strong foundational knowledge that is applicable to all other languages. There are many core concepts you can learn with C++:

  • Memory management:
    • Allocating and freeing; use of pointers, and very quickly why you should not manually manage memory
    • Different memory management models: reference-counted in the form of shared_ptr; strict ownership in the form of unique_ptr 

 

If you learn C++, you will have a solid background that will allow you to understand other languages’ designs and implementations.

It’s Widely Used

C++ is the most widely used language for software today, especially in areas requiring performance. The following applications are written totally or mostly in C++:

  • Windows Explorer

  • Photoshop

  • Word

  • Clang compiler

  • Windows (key area, including the new wrappers for XAML and desktop in C++17)

  • Amazon’s key services

  • Large parts of Apple’s macOS

  • Bloomberg’s financial software

And many more.

Why is it widely used?

Because C++ is powerful, expressive, concise, and performant. When you need to write solid, fast, applications and need powerful concepts in your code, you use C++.

Support and the Future

Finally, one key item in learning a language is the direction it’s going in the future. C++ is an ISO standard, and is evolving rapidly. You can read an overview of the various standard versions here.

It’s a language that is being kept up-to-date and extended as developers need it. That’s a language to rely on.

 

Ready to Get Started learning or expanding your C++ knowledge? Start with our free tools and C++ Bootcamp replays.