The geometric modeling system kata was inspired from professor Jon Pearce's notes on The Open-Closed Principle (OCP).
This kata will help you to understand the Open-Closed Principle.
Try to add the new shape Square without modifying any other component of the application.
In the current state, to every new shape we want to add, we need to modify existing classes in the system. Nevertheless, the Open-Closed principle says that applications should be open for extension but closed for modification. In order to satisfy OCP, we need to redesign our application.