How to write SOLID C++

preview_player
Показать описание
We all know, or should know, about SOLID. The question is, do we write C++ according to the SOLID principles?

Contents:
02:56 - Single responsibility principle
08:01 - Open/closed principle
10:35 - Liskov substitution principle
16:08 - Interface segregation principle
20:31 - Dependency inversion principle

Please like, subscribe, comment and share the video to promote good programming practices.

Would you like to get a more hands-on exposure on the various principles and concepts?

👉 I've got you covered with a course on Udemy that is still concise but with more details, a critical view of things and interactive labs for you to train your SOLID skills on.
Рекомендации по теме
Комментарии
Автор

Did you enjoy the SOLID C++ video?
Would you like to get a more hands-on exposure on the various principles and concepts?

👉 I've got you covered with a course on Udemy that is still concise but with more details, a critical view of things and interactive labs for you to train your SOLID skills on.

platisd
Автор

This is a beautiful video tutorial. Thank you for making this very easy to understand and no easier.

MrOvese
Автор

Awesome presentation. To summarize SOLID principle: 1. keep it simple, own only one responsibility. 2. without having to touch base class, extensions are done in child class, meaning base class should be generic/abstract enough. 3. Liskov substitution principle: child behaviors are honored, while adding new behaviors. 4. Interfaces should be minimum and sufficient, nothing more, nothing less, otherwise confusing and code bloating, also interfaces should be simple enough, and should do one job. 5. decoupling, nothing is tightly coupled, high business logics are not tightly coupled, concrete rules are not tightly coupled, basically in all things consider how to reduce tight coupling. Bottom line: easy to understand code, easy to use and change, easy to extend. Thanks.

antonfernando
Автор

One of the best videos I have ever seen on OO embedded design. Thank you.

antonypace
Автор

Thanks for the awesome video. I've been programming C++ for 25 years but non professionally. I used to think all the abstract programming design theories were just "corporate bloat". I had the mentality of "shut up and code!". But as you can imagine, projects became increasingly complex as project size grew. This forced many projects to go unfinished. I was CONSTANTLY having to rewrite code. Not to mention near full-rewrites... Stuff was near impossible to maintain or extend... the list goes on.

Finally, I've been making a concerted effort to write maintainable code so I don't have to keep rewriting everything from scratch all the time! I definitely agree with your beginning of the video. I tried looking through some SOLID videos before but they were based on other languages. The implementations were quite different and definitely made the examples harder to relate to.

Thanks again! I've subscribed and will definitely be checking out your other videos.

eurbanautotech
Автор

I use C and still learnt quite a lot from this. I absolutely suck at OOP and designing OOP so C is what I prefer to use in my free time.

reksie
Автор

Honestly, I watched another video that used python as an example, and I wasn't really getting it. This really helped me truly understand this set of principles.

Crock
Автор

Good explanation of SOLID. Just want to point out something about the LSP. The only way this principle is not violated is when both the pre- and post- conditions of the interface are not violated. This principle is basically derived from the old concept of "contract programming", which implies the definition of the specifications through interfaces, both with signatures AND documentation. So both pre and post conditions for the interface should be stated by specifying the range of valid values accepted and returned by the methods in their documentation. This does not prevent bugs by code, but it's up to a good programmer making sure they read the specifications and stick to it. Enforcing this by code essentially introduces another dependency, so I don't like that solution either.

AlexDrastico
Автор

Thank u so much for the great explanation.
Real-world examples are awesome.

mohamedhussien
Автор

Excellent content and the principle briefly explained with success. Amazing!

ycemilk
Автор

Very well explained. One of the best videos on this topic.

ninadgade
Автор

Great content. Thanks for sharing. A small bug that I noticed in the example code. In about 26:07, the struct AwsCloud should derive from Cloud.

CodeStation
Автор

you really did a wonderful work here...thanks a ton :) ...very well explained here...best in the market as of now ...cheers..

chandankumarmishra
Автор

Thank you for the Video. I enjoyed your examples and explanations. They really helped me understand the principles better. I hope they become more natural to me with more practice.

svensksquad
Автор

This is very very clear explanation of SOLID principles.

BlackCharms
Автор

Thank you. This is exactly what I need. Subscribed =)

bigbitesaint
Автор

One of the best video available on solid principal, great effort man :)

BeWrecker
Автор

thank you, the aws file upload example is perfect

odedkadshai
Автор

A concise and practical guide. Thank you so much!

rexsoltera
Автор

I watched your other video on SFINAE. I personally like the way you present. Please keep it.

eotcoldhymns