Apply the GRASP Design Principles to Improve Your Python Code

preview_player
Показать описание

In this video, I'll dive into the GRASP design principles and explore why they matter when designing software systems. By understanding these principles, you'll be able to write better code that's easier to maintain and extend.

🔖 Chapters:
0:00 Intro
0:59 Overview
1:23 01 - Creator
4:28 02 - Information expert
7:39 03 - Controller
11:57 04 - Protected variations
14:58 05 - Indirection
17:34 06 - Low coupling
20:43 07 - High cohesion
24:26 08 - Polymorphism
28:43 09 - Pure fabrication
30:07 Retrospective
31:44 Outro

#arjancodes #softwaredesign #python
Рекомендации по теме
Комментарии
Автор

I feel like I was drinking from the firehose. A whole semester of CS in one video. This one will require many visits. Bravo.

johncrunk
Автор

As always very valuable material. Thanks Arjan :)

Ledinos
Автор

The best GRASP-related video on YouTube! I traversed more than 20 ones in order to watch practical examples rather than clumsy theoretical declarations scraped from Wikipedia, which makes things even more unclear.
Your channel is a pure diamond and I'll stick for here later, because there is a lot of PRACTICAL information. Even despite on I'm Java-developer. Keep going! Thank you.
Will share it to friends and mates as a good example of how the things should be practically explained.

awaitingforsunrise
Автор

My first time encountering GRASP. Now all the previous videos makes sense. Thank you for sharing.

vbaclasses
Автор

Loving the Content! Keep it up! Also looking forward to more Code Roasts! 👍 🙏🙏

AlexRodriguez-vlec
Автор

Great and comprehensive material, again! I feel that with each of your videos the quality of my software development in Python increases :D Thank you!

mpfmorawski
Автор

Well done sir. Your videos are ones I like before proceeding to watch.

togrulasadov
Автор

Please do an individual video for each principle. That way we get a rock solid idea of the principle. Thanks!

adiliqbalc
Автор

I will make all my coworkers watch this, cause OHMYGOD some people just need to. Thank you so much, Arjan, for this.

shizueigaki
Автор

I am happy when someone talks about GRASP principles.
They not only tell what is the ideal design of the code, but also how to achieve that ideal state.

AAZinvicto
Автор

I think you should show the functional way more often (every time it is applicable). it is very useful (and the YouTube videos about that way to do things are not that many...)

federicomuciaccia
Автор

I appreciate you use classes. In engineering software we are not using functions (far away more complex code than what is generally shown in youtube).

deeplazydev
Автор

Really good video as usual! You are basically the reason for me staying on top of our Python-related challenges at work :D

Golgafrincham
Автор

1.4k views but 129 likes still now... Ridiculous sence of gratitude!
Respected, sir 🖖
Your content is Rare star in the universe of coding guru's🌠🌟
🎉🎀
Thank you for your continuous 🎁
Love from gratitude from🇮🇳

SP-dbsh
Автор

Final today. One of the topics is grasp. Wish me luck.

SubZeRoy
Автор

Thank you for this great video ! TBH the liskov substitution talk more about type than class. In OOP we generally only have classes to define new types so it's mainly about inheritance but it's also possible in FP (especially with algebraic data types)

fabricehategekimana
Автор

Thanks, I enjoyed the video.
I think it would be better to let the view call the controller, since in your example the controller is basically the whole use case of the application, thus should not be dependent on view (DI). Also then you can add several views calling the controller without ever changing the controller (OCP). Although these suggestions come from a SOLID perspective.

chriswunder
Автор

Great video, as always! You talk a lot about how you'd do lots of functional programming rather than object oriented programming... I'd love to see a video where you compare pure functional, pure object oriented, and a mix of both :) possibly doing the same thing?

ShanilPanara
Автор

Not sure what I found more useful in that book "Applying UML And Patterns" -- the design advice with examples, the GRASP principles or the quotes at the start of each chapter. Quotes like, "Le mieux est l'ennemi du bien (The best is the enemy of the good). -- Voltaire"

djl
Автор

I've read about them a long time ago. Thanks for your work. Maybe you will be so nice as to cover something form Eric Evans' book. There is a lot of interesting and useful information there, but it may be a bit complicated.

ЕвгенийИванов-юб