Skip to content

A hands-on, intermediate-level mini-course that teaches the five SOLID object-oriented design principles.

Notifications You must be signed in to change notification settings

rb-thompson/solid-principles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mastering Clean, Maintainable Code with SOLID Principles - Python Edition

SOLID Principles Python License: MIT

Description

This mini-course teaches the five SOLID object-oriented design principles through practical Python examples, real-world refactorings, and progressively challenging assignments.

Perfect for developers who want to:

  • Stop writing fragile spaghetti code
  • Make their codebases easy to extend, test, and maintain

By the end you’ll be able to spot SOLID violations instantly and refactor them with confidence.

Concepts & Notebooks

Module 1: (SRP) Single Responsibility Principle - SRP.ipynb

"A class should have one, and only one, reason to change."

Module 2: (OCP) Open/Closed Principle - OCP.ipynb

"Software entities should be open for extension but closed for modification."

Module 3: (LSP) Liskov Substitution Principle - LSP.ipynb

"Subtypes must be substitutable for their base types without breaking the program breaking."

Module 4: (ISP) Interface Segregation Principle

"Clients should not be forced to depend on interfaces they do not use."

Module 5: (DIP) Dependency Inversion Principle

"Depend on abstractions, not on concretions."

All principles applied together in a complete mini e-commerce example → example.ipynb

How to Use This Repo

  1. Clone or download the repository
  2. Open the notebooks in Jupyter, VS Code, Google Colab, or your favorite environment
  3. Follow along with the explanations
  4. Apply the principles to your own coding challenges
  5. Build the final project to cement everything

Certificate of Completion

When you’ve finished all assignments and the final project, proudly add this to your LinkedIn or portfolio:

🎉 SOLID Principles Master Certificate 🎉
Awarded to: [Your Name]
Date: November 2025
"I can now look at messy code and feel physical pain."

You now have one of the highest-ROI skills in your developer toolbox.
Go forth and refactor the world.

Author

R. Brandon Thompson
GitHub: @rb-thompson
LinkedIn: linkedin.com/in/appaltech

Originially created with Grok (xAI) on November 20, 2025.
Feel free to open issues, submit PRs, or star if this helped you level up!

About

A hands-on, intermediate-level mini-course that teaches the five SOLID object-oriented design principles.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published