There are five essential guidelines that enhance software design, making code more maintainable and scalable. The five principles are as follows:
- Single Responsibility Principle (SRP)
- Open/Closed Principle
- Liskov’s Substitution Principle (LSP)
- Interface Segregation Principle (ISP)
- Dependency Inversion Principle (DIP)