Course Information
Course Overview
Learning more about C++
This course is about common C++ idioms that are related to:
- types system (return type resolver, type erasure, etc.)
- polymorphism (CRTP, virtual constructor)
- dependencies (PIMPL)
- templates (SFINE, enable-if, object generator)
- resource management (RAII, reference counting, resource return)
- optimization (SOO, EBO)
Idioms emerge from certain features of a programming language or a lack of them. Thus, learning C++ idioms helps better understand this language.
While learning those idioms, we will touch upon many parts of C++ like template parameters, including parameter pack, overload resolution, types of polymorphism, casting, conversion operators, placement new, special member functions, friend declarations, type deduction, etc.
Course Content
- 7 section(s)
- 25 lecture(s)
- Section 1 Introduction
- Section 2 Type system
- Section 3 Polymorphism
- Section 4 Dependencies
- Section 5 Templates
- Section 6 Resource management
- Section 7 Optimization
What You’ll Learn
- What programming idiom is
- Most common C++ idioms
- C++ polymorphism idioms
- C++ resource management idioms
- C++ optimization idioms
- C++ type system idioms
- C++ templates idioms
Skills covered in this course
Reviews
-
JJulian Gamble
I felt like there were several lectures that felt a little unprepared or unrehearsed. The content is good, but could use polish to make it a bit more efficient (probably could have fit in a couple more idioms).
-
PPaul Tomas
Good content
-
FFalk Meutzner
good course, some of the explanations are hard to follow, unfortunately.
-
VVishal Chovatiya
Excellent & unique. There is numerous tutorial available on basic C++ but few are teaching the advanced methods. This is my second course from you. Keep going Andrii. Pros: - The topic touched upon up to date C++ standard covering C++11,14,17. - Most of the video has a downloadable example provided so that you can play along. - The course also includes CPP core guidelines. Cons: - Should also include other important idioms. - Moreover, the author has a Russian accent. So I have to play videos on 1.0 speed & need too much focus. - No quiz or exercise provided in the course. Overall it's worth doing this course. I have taken both the course designed by Andrii Shostatskyi. By the way, I have also written an article on things I have learned, here: http://www.vishalchovatiya.com/7-advanced-cpp-concepts-idiom-examples-you-should-know/