C++ High Performance

C++ High Performance

Are you a legacy C++ developer wanting to learn modern C++? This course comprehensively covers modern C++.

Advanced

174 Lessons

50h

Certificate of Completion

Are you a legacy C++ developer wanting to learn modern C++? This course comprehensively covers modern C++.

AI-POWERED

Explanations

AI-POWERED

Explanations

This course includes

2 Assessments
404 Playgrounds
14 Quizzes

This course includes

2 Assessments
404 Playgrounds
14 Quizzes

Course Overview

This course focuses on one major aspect that distinguishes professional C++ developers from beginners, which is understanding code from top to bottom and comprehending what is truly happening under the hood. Through examples and exercises, we’ll equip you with the skills needed to become a top-tier C++ developer capable of handling even the most demanding performance challenges. The course begins with performance analysis, memory management techniques, efficient concurrency handling, and advanced template...Show More

TAKEAWAY SKILLS

C++

Programming Language

C++ Concepts

C++ Templates

What You'll Learn

Proficiency in identifying and resolving performance bottlenecks in C++ code

Hands-on experience with optimizing memory management and concurrency

Knowledge of modern C++ features and best practices for high performance

Mastery of advanced template usage and parallel algorithms

Practical experience with modern memory management and multithreading techniques

Knowledge of new C++20 features for better performance

What You'll Learn

Proficiency in identifying and resolving performance bottlenecks in C++ code

Show more

Course Content

1.

Getting Started

This chapter introduces modern C++ for writing efficient apps, covers course content and prerequisites, and explores Google Test and Benchmark libraries.
2.

A Brief Introduction to C++

In this chapter, you will explore C++ basics, key features, comparisons with other languages, value semantics, const correctness, and object ownership.
7.

Ranges and Views

7 Lessons

In this chapter, you will explore the Ranges library, learn about views and their lazy iterations, and understand their use in the Standard Library.
11.

Proxy Objects and Lazy Evaluation

8 Lessons

In this chapter, you will discover how to use proxy objects and lazy evaluation to improve performance, including avoiding unnecessary objects and computations.
14.

Asynchronous Programming with Coroutines

8 Lessons

This chapter covers asynchronous programming with coroutines, including awaitable types, task creation, synchronous waiting, callback wrapping, and Boost.Asio.

Course Author

Trusted by 1.4 million developers working at companies

Anthony Walker

@_webarchitect_

Evan Dunbar

ML Engineer

Carlos Matias La Borde

Software Developer

Souvik Kundu

Front-end Developer

Vinay Krishnaiah

Software Developer

Eric Downs

Musician/Entrepeneur

Kenan Eyvazov

DevOps Engineer

Souvik Kundu

Front-end Developer

Eric Downs

Musician/Entrepeneur

Anthony Walker

@_webarchitect_

Evan Dunbar

ML Engineer

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

Instant Code Feedback

Evaluate and debug your code with the click of a button. Get real-time feedback on test cases, including time and space complexity of your solutions.

AI-Powered Mock Interviews

Adaptive Learning

Explain with AI

AI Code Mentor

FOR TEAMS

Interested in this course for your business or team?

Unlock this course (and 1,000+ more) for your entire org with DevPath