When I first approached the problem of supporting multiple payment methods, I assumed it was mainly about splitting an amount across several sources. For example, suppose a service...
Once caching is introduced into a production system, a new question arises: > If data is already stored in the cache, how should applications read and write that data? At first...
* Have you ever fixed code in one place → only to trigger a chain of bugs somewhere else? * For example: you change the way data is stored, and suddenly all the logic in , , and...
In object-oriented programming, there is a principle with a rather long name: the Interface Segregation Principle (ISP). It may sound academic, but the idea is very simple: “Don’t...
If you’ve ever heard of SOLID, then the letter L stands for Liskov Substitution Principle. The name sounds very academic, but at its core, it revolves around a very simple idea: >...
WHAT IS OCP? The Open/Closed Principle is defined as follows: > Software entities should be open for extension, but closed for modification. It may sound a bit “philosophical,” but...