C++

Level 3 of 3

Advanced Level

Prerequisites

C++ Intermediate level, or equivalent: classes and lifetimes, inheritance, the STL, exceptions, CMake and debugging.

Duration

12 weeks · 140 guided hours · 6 modules. Taught live by an instructor — online or in person.

By the end of this level you can

  • Write generic code with templates and constrain it with concepts
  • Manage ownership with smart pointers and move semantics
  • Use modern C++17/20 features to write clearer, safer code
  • Test, profile and optimise C++ code based on measurements
  • Write correct concurrent code and deliver a tested capstone project

Modules

  1. 1Module 1 · 22 h · 4 lessonsTemplates and Generic Programming
  2. 2Module 2 · 24 h · 4 lessonsModern Memory Management
  3. 3Module 3 · 20 h · 4 lessonsModern C++17 and C++20 Features
  4. 4Module 4 · 22 h · 4 lessonsTesting and Performance in C++
  5. 5Module 5 · 22 h · 4 lessonsConcurrency in Modern C++
  6. 6Module 6 · 30 h · 5 lessonsC++ Capstone Project

Advanced level project

Offline Sensor Data Processor

A command-line tool that reads large logs from solar-powered sensor stations, validates and summarises them in parallel, and writes daily reports — designed for slow, offline computers.

Deliverables

  • A CMake project with a library and a command-line executable
  • Parsing, validation, statistics and report generation for sensor logs
  • A parallel processing mode with a measured speed-up
  • Unit tests, a benchmark report and a README

Assessed on

  • Results are correct and identical in sequential and parallel modes
  • Ownership is clear: no raw new/delete, no leaks or races under sanitizers
  • Performance claims are backed by measurements on realistic data
  • The code uses modern C++ idioms and builds cleanly from the README

All levels are taught live by an instructor — online or in person — see registration options.