I will use this repository to practice and document the knowledge about S.O.L.I.D. Object-Oriented Design Principles. The source code is Java with examples of Good and Bad practices.
- Single Responsibility Principle
- Open/Closed Principle
- Liskov Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle
- Single Responsibility Principle
- Open/Closed Principle
- Liskov Substitution Principle
- Interface Segregation Principle
- Dependency Inversion Principle
A good object-oriented design allows us to build software in a way that it can follow the evolution of the business in an agile and safe way. This means that the code must be maintainable. Any code which is not maintainable and cannot adapt to changing requirements very easily is code just waiting to become old-fashioned. One of the fundamental qualities of a software engineer is writing code that is maintainable.
"A class should have one, and only one, reason to change."