Benefits of building your code with a Factory Pattern In an effort to keep our work DRY (Don’t repeat yourself), it is a best practice to use design patterns. The Factory pattern is often used in the creation of objects. A developer can do all of the work of creating the object in the factory,… Read more A SOLID Basis for the Factory Pattern
STRATEGY PATTERN In a strategy pattern the main value is in being able to switch out different algorithms for different situations. Imagine that you had an application component that renders graphs for a website depending on what kind of device made the request. The application code could detect the type of browser and then use… Read more How SOLID is the STRATEGY PATTERN?
Liskov Substitution Principle The Liskov Substitution Principle  (LSP) is applied to inheritance hierarchies. LSP specifies that classes should be designed such that client dependencies can be substituted with subclasses without the client “knowing”. How to apply the Liskov Substitution Principle To adhere to Liskov Substitution Principle, subclasses must function in the same way as… Read more SOLID OOP, Liskov Substitution Principle
Open/Close Principle (OCP) The Open/Close Principle means that software entities should be open for extension but closed for modification . Open to extension “Open to extension” means that classes are designed with the possibility of new functionality in mind. Down the road, one can extend functionality as new requirements come up. Closed for modification “Closed… Read more SOLID OOP, OPEN/CLOSE PRINCIPLE (OCP)
Single Responsibility Principle (SRP): Single responsibility principle  means that any one class should not have more than one reason to change. For this to be true, a class will only have one single responsibility. Avoid creating a god class . Objects that are controlling way too many other objects in a system and often… Read more SOLID OOP, Single Responsibility Principle