SOLID Design principles are the design principles that enable us to manage with most of the software design problems. These principles provide us ways to move from tightly coupled code and little encapsulation to the desired results of loosely coupled and encapsulated real needs of a business properly.
Developers start building applications with good and tidy designs using their knowledge and experience. But over time, applications might develop bugs. The application design must be altered for every change request or new feature request. After some time we might need to put a lot of effort, even for simple tasks and it might require a full working knowledge of the entire system. But we can’t blame change or new feature requests. They are part of the software development. We can’t stop them and refuse them either. So who is the culprit here? Obviously, it is the design of the application.
So, by considering the above problem and to help students as well as developers who want to learn How to design good software using SOLID Principles in quick time, I have decided to start series of articles on SOLID Principles.
In this SOLID Principles article series, we will cover all the features of SOLID Principles. You will learn basic to advance level features of SOLID Principles using real-time examples.