SOLID is an “acronym of acronyms”. It is a set of five Object-Oriented Design principles identified and introduced by the famous Uncle Bob in the early 2000s.
Applying these principles together when creating a software system will make it easier to maintain and extend over time [well, they say!].
The five principles are: Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion.
I found this very good article on Code Project that summarizes each principle and clarifies its concept with a simple real-world comparison.
And lately, I came across a mini-series entitled “My Relationship with SOLID” on CodeofRob.
Each entry in the series elaborates on one of the five SOLID principles; and how we, developers, may or may not agree, use, and adhere to each and every one of them in our daily work.
I find this topic pretty interesting and useful. I urge you to check out the CodeProject article first to refresh your knowledge and get the sense of SOLID, then go through the series below to check the other side of it, just like I did!