SOLID Design Principles | A preface

The need and motivation for following SOLID Design Principles

Photo by Crawford Jolly on Unsplash

Rigidity

Code is rigid when changing a piece of code requires subsequent changes in a functionally independent module.

Fragility

Code is considered fragile when you develop a new feature that works completely fine, but it also induces an error in a completely different module. Fragile code is more painful than Rigid code; there is no easy way to find the errors in a completely independent module during the development.

Non Reusability

Code reuse is the practice of using existing code for a new function or software. Reusable code could be a library/module that is called multiple times within the codebase; or, the desired code can be copy-pasted from a completely separate software. But to reuse code, that code needs to be of high-quality — reliable, generic, and secure.