03. Courses

02 C Courses V1


Four courses and one capstone project comprise the C++ Developer Nanodegree Program.

  • Foundations
  • Object-Oriented Programming
  • Memory Management
  • Concurrency
  • Capstone Project


Learn basic C++ syntax, functions, containers, and compiling and linking with multiple files. Use OpenStreetMap and the 2D visualization library IO2D to build a route planner that displays a path between two points on a map.

Object-Oriented Programming

Explore Object-Oriented Programming (OOP) in C++ with examples and exercises covering the essentials of OOP like abstraction and inheritance all the way through to advanced topics like polymorphism and templates. In the end, you’ll build a Linux system monitor application to demonstrate C++ OOP in action!

Memory Management

Discover the complexity of memory management in C++ by diving deep into stack vs. heap, pointers, references, new, delete and much more. By the end, you’ll write your very own smart pointer!


Concurrent programming runs multiple threads of execution in parallel. Concurrency is an advanced programming technique that, when properly implemented, can dramatically accelerate your C++ programs.

Capstone Project

Put your C++ skills to use on a project of your own! You’ll utilize the core concepts from this Nanodegree program - object-oriented programming, memory management, and concurrency - to build your own application using C++.