This advanced course covers the Standard Template Library (STL), concurrency, multithreading, and best practices for code optimization. Learners will explore modern C++ features from C++17 and C++20, and learn how to effectively document their code. The course culminates in a comprehensive project that integrates all learned skills, preparing learners to work with complex C++ applications in professional environments.
Course Learning Objectives
By the end of this course, you will be able to:
- Implement efficient data structures and algorithms using the Standard Template Library (STL).
- Design and develop concurrent and multithreaded applications in C++.
- Apply best practices and optimization techniques to improve code performance.
- Utilize modern C++ features from C++17 and C++20.
- Create comprehensive documentation for C++ projects using GenAI tools.
- Develop a complex C++ application that integrates multiple advanced concepts.
Standard Template Library (STL) establishes a solid foundation in modern C++ by emphasizing the effective use of the Standard Template Library (STL) to write high-performance, maintainable code. Learners explore how to select and implement the appropriate STL containers for various data storage and access requirements, apply algorithms to process data efficiently, and utilize iterators to traverse and manipulate container elements with precision. The module also introduces function objects, lambda expressions, custom comparators, and predicates, along with modern C++20 range features, to support expressive and reusable data processing pipelines. Through real-world demonstrations, hands-on coding activities, labs, and guided discussions, learners connect STL concepts to practical performance trade-offs and professional development scenarios, preparing them to design scalable, industry-ready C++ applications.
涵盖的内容
7个视频5篇阅读材料4个作业6个非评分实验室
显示有关单元内容的信息
7个视频•总计37分钟
Welcome to Advanced C++ Programming and Modern Practices•4分钟
STL Containers in High-Performance Applications•7分钟
STL Containers in High-Performance Applications•7分钟
STL Algorithms in Enterprise Data Processing•3分钟
STL Algorithms in Enterprise Data Processing•6分钟
Generic Programming with Iterators and Function Objects•4分钟
Generic Programming with Iterators and Function Objects•6分钟
5篇阅读材料•总计50分钟
Course Syllabus•10分钟
STL Container Types, Performance Characteristics, and Selection Criteria•10分钟
STL Algorithm Categories and Modern Range Processing•10分钟
Iterator Categories, Function Objects, and Modern Range Programming•10分钟
Module 1 Reference Guide•10分钟
4个作业•总计120分钟
Container Implementation and Performance Assessment•30分钟
Algorithm Implementation and Complexity Assessment•30分钟
Generic Programming and Modern C++ Assessment•30分钟
Module 1 Comprehensive Evaluation•30分钟
6个非评分实验室•总计360分钟
Container Declaration and Performance Comparison•60分钟
Data Processing with STL Containers•60分钟
Algorithm Application and Composition Practice•60分钟
STL Algorithm Pipeline for Data Processing•60分钟
Iterator Manipulation and Function Object Design Practice•60分钟
Iterator and Function Object Data Processing•60分钟
Concurrency and Multithreading
第 2 单元•小时 后完成
单元详情
Concurrency and Multithreading explores concurrency and multithreading in C++, equipping learners with the skills to build high-performance applications that fully utilize modern multi-core processors. Beginning with thread fundamentals and lifecycle management, the module progresses through synchronization mechanisms that prevent race conditions and ensure thread safety. Learners will master atomic operations for lock-free programming and implement asynchronous programming patterns using futures and promises. Through hands-on practice with real-world scenarios, including web server request processing and parallel data analysis systems, participants will develop the ability to analyze and resolve common concurrent programming challenges while applying industry best practices for building robust, scalable applications.
涵盖的内容
6个视频4篇阅读材料4个作业6个非评分实验室
显示有关单元内容的信息
6个视频•总计29分钟
Multithreading in Modern Computing Applications•3分钟
Multithreading in Modern Computing Applications•7分钟
Synchronization in Mission-Critical Systems•4分钟
Synchronization in Mission-Critical Systems•6分钟
Advanced Concurrency in Scalable Systems•4分钟
Advanced Concurrency in Scalable Systems•6分钟
4篇阅读材料•总计40分钟
Thread Fundamentals, Lifecycle Management, and Best Practices•10分钟
Synchronization Primitives, Deadlock Prevention, and Thread-Safe Design•10分钟
Asynchronous Programming, Thread Pools, and Lock-Free Programming•10分钟
Module 2 Reference Guide•10分钟
4个作业•总计120分钟
Threading Fundamentals and Management Assessment•30分钟
Thread Safety and Synchronization Assessment•30分钟
Advanced Concurrency and Scalability Assessment•30分钟
Module 2 Comprehensive Evaluation•30分钟
6个非评分实验室•总计360分钟
Thread Creation and Management Practice•60分钟
Basic Multithreading Practice Lab•60分钟
Synchronization Implementation and Deadlock Prevention Practice•60分钟
Basic Synchronization Mechanisms Practice Lab•60分钟
Futures, Promises, and Thread Pool Implementation Practice•60分钟
Advanced Concurrency Patterns Practice Lab•60分钟
Best Practices and Code Optimization
第 3 单元•小时 后完成
单元详情
Best Practices and Code Optimization focuses on best practices and code optimization techniques essential for developing high-performance C++ applications. Learners will analyze code for performance bottlenecks and apply optimization strategies to improve execution speed and memory usage. The module covers memory optimization techniques, including cache-friendly data layouts and memory pool allocation, algorithm analysis using Big O notation, and compiler optimization through flags and pragma directives. Additionally, learners will implement modern C++ idioms such as RAII principles and move semantics, utilize profiling tools to measure and validate performance improvements, and develop the judgment to balance code readability with optimization requirements in professional software development contexts.
涵盖的内容
6个视频4篇阅读材料4个作业6个非评分实验室
显示有关单元内容的信息
6个视频•总计29分钟
Code Optimization in Performance-Critical Applications•4分钟
Code Optimization in Performance-Critical Applications•6分钟
Modern C++ in Professional Software Development•4分钟
Modern C++ in Professional Software Development•6分钟
Profiling in Evidence-Based Optimization•4分钟
Profiling in Evidence-Based Optimization•5分钟
4篇阅读材料•总计40分钟
Memory Optimization, Algorithm Analysis, and Compiler Optimization•10分钟
RAII Principles, Move Semantics, and Modern Design Patterns•10分钟
Profiling Tools, Measurement Methodologies, and Data-Driven Optimization•10分钟
Module 3 Reference Guide•10分钟
4个作业•总计120分钟
Performance Optimization and Analysis Assessment•30分钟
Modern C++ Implementation and Design Pattern Assessment•30分钟
Performance Analysis and Data-Driven Optimization Assessment•30分钟
Module 3 Comprehensive Evaluation•30分钟
6个非评分实验室•总计360分钟
Performance Optimization Implementation and Analysis Practice•60分钟
Basic Code Optimization Practice Lab•60分钟
Modern C++ Idioms and Design Patterns Implementation Practice•60分钟
Modern C++ Idioms and Patterns Practice Lab•60分钟
Performance Profiling and Bottleneck Analysis Practice•60分钟
Profiling and Performance Analysis Practice Lab•60分钟
Modern C++ Features and Documentation
第 4 单元•小时 后完成
单元详情
Modern C++ Features and Documentation explores modern C++ features and professional documentation practices essential for contemporary software development. Learners will utilize powerful capabilities from C++17 and C++20, including structured bindings, std::optional, std::variant, concepts, ranges, and coroutines, while understanding the language's evolution and future directions. The module also covers comprehensive documentation principles, from effective code commenting and API documentation to project organization standards. Additionally, learners will leverage GenAI tools to generate and maintain documentation efficiently, applying best practices for quality assessment and workflow integration to ensure documentation remains accurate, current, and valuable for development teams.
涵盖的内容
6个视频4篇阅读材料4个作业6个非评分实验室
显示有关单元内容的信息
6个视频•总计28分钟
Modern C++ in Contemporary Software Development•4分钟
Modern C++ in Contemporary Software Development•5分钟
Documentation in Professional Software Development•4分钟
Documentation in Professional Software Development•5分钟
GenAI Revolution in Documentation Creation•4分钟
Generative AI for Documentation•6分钟
4篇阅读材料•总计40分钟
TITLE: C++17 Features, C++20 Capabilities, and Language Evolution•10分钟
Code Commenting, API Documentation, and Project Organization•10分钟
AI Documentation Tools, Quality Assessment, and Workflow Integration•10分钟
Module 4 Reference Guide•10分钟
4个作业•总计120分钟
Modern C++ Features and Language Evolution Assessment•30分钟
Documentation Principles and Technical Communication Assessment•30分钟
AI-Assisted Documentation and Quality Assurance Assessment•30分钟
Module 4 Comprehensive Evaluation•30分钟
6个非评分实验室•总计360分钟
Modern C++ Feature Implementation and Integration Practice•60分钟
Modern C++ Basics - Classes and STL Containers•60分钟
Documentation Creation and Quality Assessment Practice•60分钟
Basic Code Documentation and Comments•60分钟
AI Documentation Generation and Quality Improvement Practice Item Type: Short Programming Activity•60分钟
Introduction to AI-Assisted Code Documentation•60分钟
Hands on Course Project
第 5 单元•小时 后完成
单元详情
This capstone module challenges learners to integrate all advanced C++ concepts mastered throughout the course into a comprehensive application development project. Learners will design and implement a sophisticated solution utilizing STL containers and algorithms, concurrency and multithreading, optimization techniques, and modern C++17/C++20 features. The project encompasses three phases: architectural design and planning, implementation with rigorous testing, and performance optimization with AI-assisted documentation. Through this hands-on experience, learners will demonstrate their readiness for enterprise-level software development and technical leadership roles in professional environments.
涵盖的内容
1个视频3篇阅读材料1个作业1个非评分实验室
显示有关单元内容的信息
1个视频•总计3分钟
Advanced C++ in Enterprise Application Development•3分钟
3篇阅读材料•总计30分钟
Advanced C++ Application Development Project Overview•10分钟
Advanced C++ Application Development: Capstone Project•10分钟
Course Completion and Professional Excellence•10分钟
1个作业•总计30分钟
Advanced C++ Application Development: Capstone Project Assessment•30分钟
1个非评分实验室•总计60分钟
Advanced C++ Application Development: Capstone Project•60分钟
Our goal at Microsoft is to empower every individual and organization on the planet to achieve more.
In this next revolution of digital transformation, growth is being driven by technology. Our integrated cloud approach creates an unmatched platform for digital transformation. We address the real-world needs of customers by seamlessly integrating Microsoft 365, Dynamics 365, LinkedIn, GitHub, Microsoft Power Platform, and Azure to unlock business value for every organization—from large enterprises to family-run businesses. The backbone and foundation of this is Azure.
When will I have access to the lectures and assignments?
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
What will I get if I subscribe to this Certificate?
When you enroll in the course, you get access to all of the courses in the Certificate, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.