The Component Principles
The SOLID Principles guide us in designing understandable, easy-to-change, and reusable modules and classes. Without these principles, we would not know why a module is well-designed or not. And if a class resists change, we can point to violations of the SOLID Principles.
Components also have a set of design principles—The Component Principles. Components are the smallest deployable elements of a software system. They are files. In .NET they are .DLL files, in Java .JAR files, and in Javascript .JS files. Components are made up of modules.
If we didn’t have any principles to guide our software development efforts, then anything goes. And we know what code looks like when no rules and guidelines are pointing out the path of high maintainability.
According to Robert C. Martin, the Component Principles can be split into two distinct categories:
- Principles of Component Cohesion
- The Reuse/Release Equivalence Principle,
- The Common Closure Principle
- The Common Reuse Principle
- Principles of Component Coupling
- The Acyclic Dependencies Principle
- The Stable Dependencies Principle
- The Stable Abstractions Principle
We’ll cover each principle over the coming weeks.
Leave a Reply
Want to join the discussion?Feel free to contribute!