Multi-Paradigm Programming with Modern C++
Multi-Paradigm Programming with Modern C++, available at $59.99, has an average rating of 4.65, with 64 lectures, 11 quizzes, based on 101 reviews, and has 930 subscribers.
You will learn about Take your C++ skills to the next level Learn different programming styles Get hands-on experience with useful design patterns Know the little details that make great C++ programs Write safe and performant concurrent code Understand some of the most important C++ Core Guidelines Be among the first to learn and use modules, concepts, ranges, and coroutines This course is ideal for individuals who are If you are a C++ developer and want to upskill your C++ development skills, this is the course you. It is particularly useful for If you are a C++ developer and want to upskill your C++ development skills, this is the course you.
Enroll now: Multi-Paradigm Programming with Modern C++
Summary
Title: Multi-Paradigm Programming with Modern C++
Price: $59.99
Average Rating: 4.65
Number of Lectures: 64
Number of Quizzes: 11
Number of Published Lectures: 64
Number of Published Quizzes: 11
Number of Curriculum Items: 75
Number of Published Curriculum Objects: 75
Original Price: $109.99
Quality Status: approved
Status: Live
What You Will Learn
- Take your C++ skills to the next level
- Learn different programming styles
- Get hands-on experience with useful design patterns
- Know the little details that make great C++ programs
- Write safe and performant concurrent code
- Understand some of the most important C++ Core Guidelines
- Be among the first to learn and use modules, concepts, ranges, and coroutines
Who Should Attend
- If you are a C++ developer and want to upskill your C++ development skills, this is the course you.
Target Audiences
- If you are a C++ developer and want to upskill your C++ development skills, this is the course you.
C++ is a multi-paradigm language that lets you solve a problem in different ways, and this course will teach you the best practices.
Furthermore, C++ has been re-invented again. C++2a is the largest extension to the language since C++11, and it almost feels like a new language. Developers who master the new features will be able to write cleaner, faster and concurrent code. In this course, you will learn about the best practices of C++ programming, including project structure, designing interfaces and classes, C++ Core Guidelines, and the most recent language standard. The new features are numerous and cover almost every area of the language: modules let us organize our programs better; concepts help us create cleaner APIs; ranges forever change how we look at containers; concurrency features, such as coroutines, bring parallel and concurrent programming to a whole new level.
You will get plenty of practical experience with short, real-world code examples. By the end of this course, you will be ready to create better software using C++.
About the Author
Georgy Pashkov is a passionate software developer and team leader. The author has been successfully programming with C++ for over 10 years.
Throughout his career, Georgy has worked on many projects developed using C++, mainly in the supply chain industry. His experience covers desktop, server, and mobile applications for multiple platforms. He is passionate about creating high quality, reliable software.
Georgy was raised in Karelia, Russia. He earned his specialist degree in CS at Petrozavodsk State University and moved to Belgium shortly after graduation. With many years of experience in software development, he decided to share some of his skills.
Course Curriculum
Chapter 1: Introduction to C++
Lecture 1: The Course Overview
Lecture 2: On Programming Paradigms
Lecture 3: A Brief History with C++
Lecture 4: On Development Tools
Chapter 2: Structuring Projects in C++
Lecture 1: Structure of C++ Projects
Lecture 2: Organizing Source Files
Lecture 3: Improving Compilation Speed
Lecture 4: Pimpl Idiom
Lecture 5: Modules in C++ 2a
Lecture 6: Structuring Modules
Chapter 3: Creating Better Interfaces
Lecture 1: What Makes a Good Interface
Lecture 2: Providing a Good Abstraction
Lecture 3: Passing Things Around
Lecture 4: Enforcing the Contract
Lecture 5: Interface with Style
Lecture 6: Application Binary Interface
Chapter 4: Going Object-Oriented
Lecture 1: Class and Structs
Lecture 2: Constructors and Destructors
Lecture 3: Copy and Move
Lecture 4: Designing Class Hierarchies
Lecture 5: Dual Hierarchy Example
Lecture 6: Managing Memory
Lecture 7: Shared Pointer
Chapter 5: From Functions to <functional>
Lecture 1: What Makes a Good Function
Lecture 2: Arguments and Return Values
Lecture 3: Going Functional
Lecture 4: Using Lambdas
Lecture 5: Compile-Time Evaluation Using constexpr
Chapter 6: Writing Generic Code with Templates
Lecture 1: When to Use Templates
Lecture 2: Instantiating the Template
Lecture 3: Specializing the Template
Lecture 4: Entering Concepts
Lecture 5: Diving into Concepts
Chapter 7: Working with Collections
Lecture 1: In Search of a Perfect Container
Lecture 2: Searching and Sorting
Lecture 3: Manipulating Data
Lecture 4: Enter Ranges
Lecture 5: Dive into Ranges
Lecture 6: More Range Examples
Chapter 8: Concurrent Data Access
Lecture 1: Data Access Modes
Lecture 2: Synchronization with Atomics
Lecture 3: Synchronization with Mutexes
Lecture 4: Synchronization with Condition Variables
Lecture 5: Parallel STL
Chapter 9: Task-Level Parallelism
Lecture 1: Thread Pools
Lecture 2: Promise and Future
Lecture 3: Running Asynchronous Tasks
Lecture 4: Task Continuation
Lecture 5: Grouping Tasks with Fork/Join
Lecture 6: Distributing the Work
Chapter 10: Introduction to Coroutines
Lecture 1: What Is a Coroutine?
Lecture 2: Coroutine Mechanics
Lecture 3: Coroutine Machinery
Lecture 4: Writing Our First Coroutine
Lecture 5: Resuming the Coroutine
Chapter 11: Dive Deeper into Coroutines
Lecture 1: Coroutines on a Thread Pool
Lecture 2: Scheduling a Coroutine
Lecture 3: Returning Values
Lecture 4: Adding Syntactic Sugar
Lecture 5: Implementing Continuations
Lecture 6: Putting It All Together
Chapter 12: C++ Core Guidelines
Lecture 1: About the Guidelines
Lecture 2: Enforcing the Guidelines
Lecture 3: General Guidelines
Instructors
-
Packt Publishing
Tech Knowledge in Motion
Rating Distribution
- 1 stars: 0 votes
- 2 stars: 2 votes
- 3 stars: 6 votes
- 4 stars: 28 votes
- 5 stars: 65 votes
Frequently Asked Questions
How long do I have access to the course materials?
You can view and review the lecture materials indefinitely, like an on-demand channel.
Can I take my courses with me wherever I go?
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don’t have an internet connection, some instructors also let their students download course lectures. That’s up to the instructor though, so make sure you get on their good side!
You may also like
- Top 10 Video Editing Courses to Learn in November 2024
- Top 10 Music Production Courses to Learn in November 2024
- Top 10 Animation Courses to Learn in November 2024
- Top 10 Digital Illustration Courses to Learn in November 2024
- Top 10 Renewable Energy Courses to Learn in November 2024
- Top 10 Sustainable Living Courses to Learn in November 2024
- Top 10 Ethical AI Courses to Learn in November 2024
- Top 10 Cybersecurity Fundamentals Courses to Learn in November 2024
- Top 10 Smart Home Technology Courses to Learn in November 2024
- Top 10 Holistic Health Courses to Learn in November 2024
- Top 10 Nutrition And Diet Planning Courses to Learn in November 2024
- Top 10 Yoga Instruction Courses to Learn in November 2024
- Top 10 Stress Management Courses to Learn in November 2024
- Top 10 Mindfulness Meditation Courses to Learn in November 2024
- Top 10 Life Coaching Courses to Learn in November 2024
- Top 10 Career Development Courses to Learn in November 2024
- Top 10 Relationship Building Courses to Learn in November 2024
- Top 10 Parenting Skills Courses to Learn in November 2024
- Top 10 Home Improvement Courses to Learn in November 2024
- Top 10 Gardening Courses to Learn in November 2024