Open/Closed (OCP)–SOLID Design Principle
Software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification. By open for extension, this principle means the ability for an entity to be adapted to meet the changing needs of an application. By closed for modification, this principle means that the…
Single Responsibility
Previously I blogged about the 5 SOLID Design Princinples. Now I will break them down independently starting with Single Responsibility. Most of the information and examples in this post are from Chapter 2 of Practical Objected Oriented Design in Ruby (aka POODR) by Sandi Metz. I…