Design Patterns Archive
What is the Liskov Substitution Principle: An Explanation with Examples in Java
 On September 18, 2022  In Design Patterns, Software Design
															
								In this post, we will understand the Liskov substitution principle and illustrate how it works with an extended example in Java. The Liskov substitution principle states that an object of a superclass should be replaceable with an object of any of its subclasses. It is one of the SOLID design principles in object-oriented software							
						What is the Open/Closed Principle: An Explanation with Examples in Java
 On August 17, 2022  In Design Patterns, Software Design
															
								The open-closed principle states that classes and modules in a software system should be open for extension but closed for modification. It is one of the SOLID principles for software design.In this post, we will build a step-by-step understanding of the open/closed principle using examples in Java. Why Should You Apply the Open/Closed Principle?							
						The Single Responsibility Principle
 On June 19, 2022  In Design Patterns, Software Design
															
								What is the Single Responsibility Principle? The SRP is often misinterpreted to stipulate that a module should only do one thing. While designing functions only to have one purpose is good software engineering practice, it is not what the single responsibility principle states. In a nutshell, the single responsibility principle is one of the							
						

