Maxtrain.com - info@maxtrain.com - 513-322-8888 - 866-595-6863
Advanced C++ 20 Programming (Modern C++)
Description
Advanced C++ 20 Programming (Modern C++) Introduction
Unlock the full potential of Modern C++ with our Advanced C++ 20 Programming course. Over three intensive days, experienced C++ programmers will delve deep into advanced techniques and practices essential for developing high-performance software. This training is ideal for professionals in system software, game development, real-time systems, and AI programming, who are looking to enhance their coding efficiency, robustness, and speed.
In this course, participants will explore a comprehensive curriculum under the guidance of seasoned experts, focusing on cutting-edge topics such as SOLID design principles, operator overloading, functional programming, and advanced template usage. With a strong emphasis on practical application, you will participate in extensive lab exercises to master multi-threading and asynchronous programming, skills critical for sectors like financial technology, gaming, and large-scale distributed systems.
By the end of this course, you will be equipped to handle sophisticated programming challenges, increase your contribution to team projects, and create superior applications that stand out in the competitive tech industry. Enhance your skill set and become an invaluable member of any high-tech development team with our specialized training in Modern C++.
Course Objectives
Working in a hands-on learning environment, guided by our expert team you’ll learn to:
- Master Advanced Techniques: Gain in-depth knowledge of Modern C++ features, including the latest advancements in C++ 20.
- Enhance Software Performance: Learn to write more efficient, faster, and robust C++ code suitable for high-performance applications.
- Apply SOLID Principles: Understand and apply SOLID design principles to improve the scalability and maintainability of your code.
- Develop Multithreading Mastery: Acquire skills in multi-threading and asynchronous programming to build high-performance and responsive applications.
- Hands-On Experience: Engage in intensive lab exercises to apply what you learn in real-world scenarios.
- Advance Functional Programming: Explore functional programming concepts and their applications in C++.
- Utilize Advanced Templates: Learn strategic use of templates to solve complex problems more effectively.
Prerequisites
- Incoming students should have basic knowledge of C++ programming.
Audience
- This is an intermediate and beyond level development course designed for developers with prior C++ programming experience. Students without prior C++ programming background should take the pre-requisite training.
Advanced C++ 20 Programming (Modern C++) Outline
C++ Quick Review
- Modern C++ – an introduction to new features in C++ 11-20
SOLID Design
- Design Smells
- Project Overview
- Single Responsibility
- Open/Close
- Liskov’s Substitution
- Interface Segregation
- Dependency Inversion
Implementing a Factory in C++
- Factory Basics
- Options
- Singleton
- A C++ Object Factory
Operator Overloading
- Commonly Overloaded operators
- Conversions
- Constructor Conversions
- Implicit vs Explicit
Templates
- Understanding variance
- Implementing covariant templates
- Implementing contravariant templates
auto
Functional Programming
- Lambda Expressions
- Functors
Structural Patterns
- Adapter
- Bridge
- Composite
- Decorator
- RAII and Proxy Pattern – Smart Pointers
- Strategies for Smart Pointers & Raw Pointers
- Other patterns
Behavioral Patterns
- Solving common design smells with behavioral patterns
- Template Method – issues initializing C++ objects
- State Pattern
- Strategy Pattern
- Command Pattern
- Other behavioral Patterns
Threads, Tasks, Async
- All about threads
- Mutex
- Semaphores
- Latch & barrier
- Atomics
- All about Tasks
- Coroutines (async)
$2395.00
|
3 Days Course |