Learn the SOLID programming principles to write more stable, scalable code. Get detailed examples and real-world examples of SOLID in action.
- View Offline
- Resilient, high-quality software is built by following well-established design principles. Five of those principles make the acronym S-O- L-I- D. Solid. That's what this course is all about. Hi, I'm Steven Lott, and I've been building software for decades. In this course, I'll cover the five solid design principles. I'll start by showing you an example of what can go wrong when some basic principles of good design are ignored.
Using this as background, I'll cover each of the five solid principles. This will involve Python examples that explain how to apply each principle, and I'll address some unique features of the Python language and how those features interact with the solid principles. Finally, I'll share a pair of techniques for managing the overall design process. This will help you apply the solid principles to your own software. So, if you're ready, let's hoist sail and get underway.
To incorporate SOLID into your own development workflow, Steven Lott has prepared a series of lessons that break down the principles one by one, with real-world examples. Learn how to use these principles in the design process, and to test the strength of your code along the way. Steven uses Python to demonstrate the concepts, but they're useful for any object-oriented programming language.
- An overview of SOLID principles
- Segregating code into client-specific modules
- Testing code by substituting subtypes for base classes
- Keeping software open for extension but closed to modification
- Eliminating dependencies on details
- Assigning one responsibility to each class
- Using SOLID principles in the design process