Course Overview

C++ Beginner's Course

A beginner's guide to practical C++

Modules

9

Lessons

68

Course created by Amanuel Chaka

Module 1

Modern Type System and Memory Safety

Deep dive into the C++23 type system, emphasizing type safety, compile-time evaluation, and the elimination of legacy C constructs.

Module 2

Modern Control Flow and String Formatting

Mastering logical branching and the revolutionary C++23 std::print/std::format libraries.

Module 3

Functions and Functional Programming

Advanced function design including lambda expressions, recursion, and the new 'deducing this' feature.

Module 4

Smart Pointers and Memory Ownership

Eliminating memory leaks by mastering RAII and modern resource management without 'new' or 'delete'.

Module 5

Advanced Object-Oriented Programming

Modern class design, including move semantics, virtual dispatch, and interface design.

Module 6

Templates and Generic Programming with Concepts

Moving beyond basic templates to constrained generic programming using C++20/23 Concepts.

Module 7

The Standard Library (STL) and Ranges

Harnessing the power of C++23 Ranges and modern containers for efficient data processing.

Module 8

Modules and Advanced Concurrency

Organizing code with Modules and executing tasks with modern concurrency primitives.

Module 9

Final Assessment

Comprehensive evaluation of the course material covering everything from syntax to system design.