Learn in-detail about the five SOLID principles and understand how they impact the application design and enhancements in a positive way.
Flexibility, Maintainability and Extensibility are some of the buzzwords we often hear when dealing with developing application softwares. There are simple principles which help us design and develop some really good components which also comply with the desired characteristics of an ideal software, and we call them the SOLID principles.
The second principle of the SOLID is called as the Open/Closed Principle, which talks about the need for the component to embrace extensibility.
The third principle of the SOLID principles is Liskov Substitution Principle, which talks mainly about substitutions and inheritance - one of the basic foundations of OOP
The fourth principle of the SOLID principles, which is an acronym for principles explaining the things that must be kept in mind while developing robust, flexible and maintainable components of software, is the Interface Segregation Principle.
The last of the SOLID principles is the Dependency Inversion Principle which states that High level modules should not depend on low-level modules. Both should communicate by means of abstractions. The principle also talks about high-level and low-level modules, let's understand what the high and low levels of modules mean.