C++ Standard Library including C++ 14 & C++ 17 Course Syllabus

Full curriculum breakdown — modules, lessons, estimated time, and outcomes.

Overview: This course provides a comprehensive journey through the C++ Standard Library with a focus on both foundational components and modern enhancements introduced in C++14 and C++17. Structured into 8 modules, each requiring approximately 6-8 hours of engagement, learners will gain hands-on experience with STL containers, algorithms, smart pointers, concurrency tools, and new library types. The curriculum emphasizes real-world coding patterns, performance, and safe API design. With around 60 hours of total content, this course is ideal for developers seeking mastery of modern STL practices in production environments.

Module 1: STL Containers & Iterators

Estimated time: 7 hours

  • std::vector, std::deque, and std::list usage and performance trade-offs
  • Ordered and unordered associative containers: std::map, std::unordered_map
  • Iterator categories and traversal patterns
  • Using iterator adaptors in data pipelines

Module 2: Algorithms & Function Objects

Estimated time: 7 hours

  • Core algorithms from <algorithm>: sort, transform, accumulate
  • Custom predicates and comparators
  • Lambda expressions and inline function objects
  • Chaining algorithm operations for data processing

Module 3: Smart Pointers & Resource Management

Estimated time: 7 hours

  • std::unique_ptr and RAII-based resource management
  • std::shared_ptr and reference-counted ownership
  • std::weak_ptr to break cyclic dependencies
  • Refactoring raw pointer code to smart pointers

Module 4: Chrono, Threading & Synchronization

Estimated time: 7 hours

  • Time measurement with std::chrono durations and clocks
  • Creating and managing threads using std::thread
  • Synchronization with std::mutex and locks
  • Asynchronous operations via std::future and std::async

Module 5: C++14/17 Library Additions

Estimated time: 7 hours

  • std::make_unique for safe pointer creation
  • Generic lambdas and improved type inference
  • std::optional for representing optional values
  • std::variant and std::string_view for efficient type-safe unions and string handling

Module 6: Filesystem & Regular Expressions

Estimated time: 7 hours

  • Navigating paths and directories with <filesystem>
  • Recursive file traversal and metadata inspection
  • Pattern matching using <regex>
  • Building a log scanner with regex filtering

Module 7: Ranges & Parallel Algorithms

Estimated time: 7 hours

  • Introduction to ranges and std::views
  • Using std::ranges::for_each and view pipelines
  • Parallel execution with std::execution policies
  • Processing large datasets efficiently

Module 8: Best Practices & Capstone Project

Estimated time: 8 hours

  • Designing exception-safe interfaces
  • Best practices in API and library design
  • Performance profiling and memory optimization
  • Implementing a modular library component with peer review

Prerequisites

  • Familiarity with core C++ syntax and object-oriented programming
  • Experience writing and compiling C++ programs using templates and references
  • Basic understanding of memory management and pointers

What You'll Be Able to Do After

  • Design efficient and safe code using STL containers and algorithms
  • Apply modern C++14/17 library features in real-world applications
  • Manage resources effectively using smart pointers and RAII
  • Build concurrent applications with threading and synchronization utilities
  • Implement high-performance, maintainable C++ components using best practices
View Full Course Review

Course AI Assistant Beta

Hi! I can help you find the perfect online course. Ask me something like “best Python course for beginners” or “compare data science courses”.