Code Smell:
- Rigidity -hard to modify
- Fragility - any change make code unstable or bug prone
- Immobility -components can not be reused in other system
- Viscosity - single change forces to change lot of places
- Needless complexity - excessive point of extension
Major issue with code smell is Tight Coupling
SOLID principles are introduced to reduce code smells, they are:
- S - Single Responsibility Principle
- O - Open Close Principe (Open for extension and Close for modification)
- L - Liskove substitute principle (replace the object/instance of a parent class with an object/instance of the child class, without affecting the behavior of the base class instance)
- I - Interface Segregation Principle - Clients should not be forced to implement any methods they don’t use. Rather than one fat interface, numerous little interfaces are preferred based on groups of methods with each interface serving one submodule.
- D - Dependency Inversion Principle (DIP)- high-level modules/classes should not depend on low-level modules/classes. Both should depend upon abstractions.
Comments
Post a Comment