S.O.L.I.D design principle comes from Object oriented programming guidelines. It is designed to develop software that can be easily maintained and extended; prevents code smells; easy to refractor; promotes agility and finally incorporates rapid + frequent changes quickly without bugs.

Generally, technical debt is the result of prioritising speedy delivery over perfect code. To keep it under control - use SOLID principles, during development.

Robert Martin, is credited with writing the SOLID principles and stated 4 major software issues if S.O.L.I.D is not followed diligently. They are :

Rigidity:

Implementing even a small change is difficult since it’s likely to translate into a cascade of changes.

Fragility:

Any change tends to break the software in many places, even in areas not conceptually related to the change.

Immobility:

We’re unable to reuse modules from other projects or within the same project because those modules have lots of dependencies.

Viscosity:

Difficult to implement new features the right way.

SOLID is a guideline and not a rule. It is important to understand the crux of it and incorporate it with a crisp judgement. There can be a case when only few principles out of all is required.

#typescript #javascript #solid-in-javascript #what-are-solid-principles #what-is-a-solid-principle #design-patterns #design-principles #object-oriented-design

S.O.L.I.D. Software Design Principles To Help You Become A Better Developer
1.80 GEEK