Course Outline
Introduction
- Current developments in the C++ standard
- Comprehensive overview of C++ features and structural components
- Foundations of object-oriented programming principles
- Core fundamentals of C++ syntax and logic
Initial Setup
- Configuration of the software development environment
- Installation and setup of Integrated Development Environments (IDE)
- Utilization of standard libraries and core components
Advanced C++ Implementation
- Application of lambda expressions in C++
- Employment of standard containers and algorithmic processes
- Management of move semantics
- Adherence to established C++ coding standards
- Implementation of the Pimpl (Pointer to Implementation) design pattern
- Techniques for operator overloading
- Application of polymorphism in C++ architectures
- Handling of variables, arrays, and conditional logic
- Distinguishing between references and pointers
- Robust exception handling strategies
- Integration of other modern functional and implementation features
Secure Coding Practices
- Implementation of C++ security features and industry best practices
- Modern approaches to memory management
- Secure string handling methodologies
- Integration with User Account Control (UAC) mechanisms
- Identification of security vulnerabilities and corresponding mitigation strategies
Quality Assurance and Testing Strategies for C++
- Selection of appropriate testing frameworks
- Code analysis and performance metrics
- Development of unit tests
- Execution of integration and system-level testing
- Testing methodologies for legacy codebases
- Application of black-box testing techniques
Code Debugging and Analysis
- Use of conditional and function breakpoints
- Debugging techniques for multi-threaded applications
- Utilization of performance monitoring and diagnostic tools
Conclusion and Post-Training Guidance
Requirements
- Familiarity with fundamental C++ programming concepts
Target Audience
- Software developers
Testimonials (5)
The online-ness of it meant that we could save a lot of time. Much appreciated. Also, the fact that the trainer knew both c# and Cpp was a huge help since he could explain everything through knowledge we already possessed.
Gabor - Rheinmetall Electronics Hungary Kft
Course - Advanced C++
The pace was optimal, not too slow not too fast. The subjects we touched were very informal and interesting. I think I understood everything. We talked about what is the use case and why is that useful. The examples were small and concise was easy to understand. We could ask questions at every step and it was answered and explained fully and with great patience. We were also asked questions to make sure we understand the subject or have any questions. It was fun and entertaining although very informal and I think I learned a lot.
Gabor - Rheinmetall Electronics Hungary Kft
Course - Advanced C++
Lots of exercises and help. It was useful for the trainer to be able to use our individual project doucments to be able to help us fix our issue and complete the exercises. {Plenty of chance for asking questions too.
Matthew - Teledyne
Course - Advanced C++
I liked that we had exercises to do, the material was impressive and well structured and the trainer explained very well all the topics
Diana Toldas - Accenture Industrial Software Solutions S.A.
Course - Advanced C++
Enjoyed the flexibility and variety of topics, the combination of trainings and exercises meant that I could apply what I'd learnt straight away. I also enjoyed the projects on the last day to bring everything together.