Intermediate C++ 20 Programming / Effective C++
Intermediate C++ 20 / Effective C++ 20 is a four-day, hands-on training program designed for developers with prior C++ experience who want to master modern C++ programming techniques. The course explores intermediate to advanced C++ concepts, including modern language features, memory management, templates, functional programming, concurrency, and unit testing. Participants gain in-depth knowledge of C++ 20 features such as concepts and auto templates, along with best practices for designing efficient, maintainable, and scalable applications. Through lab-intensive instruction, learners develop the skills needed to build high-performance systems using modern C++ standards.
- Apply intermediate to advanced C++ 20 programming techniques and best practices
- Understand and implement modern memory management using RAII, smart pointers, and move semantics
- Use templates, concepts, and generic programming to build reusable components
- Design robust applications using SOLID principles, inheritance, and polymorphism
- Apply functional programming techniques using functors, lambdas, and dependency injection
- Leverage the C++ Standard Library, including containers, algorithms, numerics, and date/time utilities
- Implement effective unit testing in C++ using Google Test (GTest)
- Understand the fundamentals of concurrent programming using threads, tasks, and async
- Intermediate C++ developers with prior C++ programming experience
- Software engineers working on performance-critical or system-level applications
- Developers seeking to modernize their C++ skills using C++ 20 features
- Professionals preparing for advanced C++ development roles
Practical experience equivalent to TTCP2100: Introduction to C++ Programming, or recent completion of that course