How To Write Solid C++

Posted By: ELK1nG

How To Write Solid C++
Published 1/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 225.20 MB | Duration: 0h 39m

Design maintainable and reusable C++ for production

What you'll learn

Understand the essence of SOLID principles

Analyze existing code for SOLID principle compliance

Evaluate the need for refactoring to comply with the SOLID principles

Write C++ that adheres to the SOLID principles, resulting in production-ready maintainable and reusable software

Requirements

Basic understanding of object oriented programming.

Good understanding of polymorphism, classes and inheritance in C++.

Basic familiarity with common STL containers and data structures, such as std::vector, std::string etc.

Description

In this course, we learn how to develop C++ according to the SOLID Principles.Have you ever heard of the SOLID principles? They are design principles that help us write maintainable and reusable code.If you are familiar with SOLID, you might have watched a tutorial or two.Were the tutorials using "Shape" or "Animal" classes in their oversimplified examples?Were they written in Java or focused on some domain you are not interested in?Well, this course is different. First of all, you get a real insight into what the SOLID principles are about. No sugar-coating, no fancy design patterns, or exotic language features.Secondly, the course is in C++. Simple, modern C++ with pragmatic examples you may encounter in production code-bases.Production code is not always perfect, but it is normally not terrible either.Violations of SOLID are subtle, and you will learn to recognize them.Refactoring does not always makes sense, but after this course you will be able to determine when it does.Step-by-step, we go through each principle and map it to well-known programming practices and quality attributes.We look at several practical examples and discuss how they can be improved by following the SOLID principles.We analyze code and identify violations of the principles.Finally, we refactor C++ to make it more SOLID and discuss whether or when that makes sense.You are looking a hands-on course. You will write a lot of SOLID C++ code yourself. There is a lab for each principle, where you will receive a piece of code, analyze it, and then refactor it to make it more SOLID.Intrigued? Ready to take your C++ to the next level? Join me in this course, and let's get started!

Overview

Section 1: Introduction

Lecture 1 Introduction to the course

Lecture 2 Introduction to the labs

Section 2: Single Responsibility Principle

Lecture 3 Single Responsibility Principle

Section 3: Open-Closed Principle

Lecture 4 Open-Closed Principle

Section 4: Liskov Substitution Principle

Lecture 5 Liskov Substitution Principle

Section 5: Interface Segregation Principle

Lecture 6 Interface Segregation Principle

Section 6: Dependency Inversion Principle

Lecture 7 Dependency Inversion Principle

Section 7: Conclusion

Lecture 8 Takeaways and reflections

Beginner to intermediate C++ developers, who want to take their career to the next level,C++ developers who have a passion for crafting maintainable and reusable software for production