Free YouTube views likes and subscribers? Easily!
Get Free YouTube Subscribers, Views and Likes

Why You Should Think About SOFTWARE ARCHITECTURE in Python đź’ˇ

Follow
ArjanCodes

In this video, I talk about software architecture, what it is, and how it relates to writing code and software design. As an example, I show you how to implement a ModelViewController (MVC) architecture in Python and discuss a few other software architectures as well.

Here's my FREE 7step guide to help you consistently design great software: https://arjancodes.com/designguide.

A few interesting links to articles and books:
About Django's architecture: https://djangobook.com/mdj2djangost...
Overview of software architecture patterns: https://towardsdatascience.com/10com...
Design Patterns: Elements of Reusable ObjectOriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides: https://amzn.to/3jllgyH
Principles of Package Design: Creating Reusable Software Components by Matthias Noback: https://amzn.to/2NETK3l
Clean Code: A Handbook of Agile Software Craftsmanship by Robert Martin: https://amzn.to/3qVZgNs
The original Design Principles and Design Patterns article by Robert Martin: https://fi.ort.edu.uy/innovaportal/fi...

Courses:
The Software Designer Mindset: https://www.arjancodes.com/mindset
The Software Designer Mindset Team Packages: https://www.arjancodes.com/sas
The Software Architect Mindset: Preregister now! https://www.arjancodes.com/architect
Next Level Python: Become a Python Expert: https://www.arjancodes.com/nextlevel...
The 30Day Design Challenge: https://www.arjancodes.com/30ddc

GEAR & RECOMMENDED BOOKS: https://kit.co/arjancodes.

You can find the code I worked on in this episode in my GitHub repository: https://github.com/arjancodes/betterp...

All parts in this series:
Part 1: Cohesion and coupling    • Cohesion and Coupling: Write BETTER P...  
Part 2: Dependency inversion    • Dependency Inversion: Write BETTER PY...  
Part 3: The strategy pattern    • The Strategy Pattern: Write BETTER PY...  
Part 4: The observer pattern    • Observer Pattern Tutorial: I NEVER Kn...  
Part 5: Unit testing and code coverage    • 100% CODE COVERAGE  Think You're Don...  
Part 6: Template method and bridge    • Two UNDERRATED Design Patterns  Writ...  
Part 7a: Exception handling    • Exception Handling Tips in Python ⚠ W...  
Part 7b: Monadic error handling    • Monadic Error Handling in Python ⚠ Wr...  
Part 8: Software architecture    • Why You Should Think About SOFTWARE A...  
Part 9: SOLID principles    • Uncle Bob’s SOLID Principles Made Eas...  
Part 10: Object creation patterns    • QUESTIONABLE Object Creation Patterns...  

Chapters:
0:00 Intro
0:45 What is software architecture?
1:38 Example: Django
2:21 ModelViewController (MVC)
2:57 MVC: code example
4:26 Creating the Model
4:43 Creating the View
6:57 Creating the Controller
9:23 Patching up everything
10:03 Improvement #1: creating an abstract View class
11:40 Improvement #2: adding a functional strategy design pattern
13:58 Analysis of the new code
14:49 Other software architectures
15:58 Final thoughts

If you enjoyed this content, give this video a like. If you want to watch more of my upcoming videos, consider subscribing to my channel!

Join my Discord server: https://discord.arjan.codes
Twitter:   / arjancodes  
LinkedIn:   / arjancodes  
Facebook:   / arjancodes  

#arjancodes #softwaredesign #softwarearchitecture

Photo by Kimon Maritz on Unsplash: https://unsplash.com/@kimonmaritz

DISCLAIMER The links in this description might be affiliate links. If you purchase a product or service through one of those links, I may receive a small commission. There is no additional charge to you. Thanks for supporting my channel so I can continue to provide you with free content each week!

posted by shiny399046