SOLID Principles
The foundation of Object-Oriented Design (Uncle Bob).
Table of Contents
- SRP (Single Responsibility Principle): A class/module should have one, and only one, reason to change.
- OCP (Open/Closed Principle): Software entities should be open for extension, but closed for modification.
- LSP (Liskov Substitution Principle): Subtypes must be substitutable for their base types without altering correctness.
- ISP (Interface Segregation Principle): Clients should not be forced to depend on interfaces they do not use.
- DIP (Dependency Inversion Principle): High-level modules should not depend on low-level modules. Both should depend on abstractions.