文章摘要: 设计模式七种原则汇总。
单一职责原则
- (Single Responsibility Principle,SRP)
- 一个类只负责一个职责或一个功能。
- 这个原则强调的是高内聚、低耦合,可以降低类的复杂度,提高代码的可读性、可维护性和可重用性。
开闭原则
- (Open-Closed Principle,OCP)
- 一个类的行为应该是可扩展的,但是不可修改。
- 这个原则强调的是代码的可维护性和可扩展性,通过抽象化来避免修改已有代码的风险,从而降低软件维护的成本。
里氏替换原则
- (Liskov Substitution Principle,LSP)
- 子类应该可以替换其父类并且不会影响程序的正确性。
- 这个原则强调的是面向对象的继承和多态特性,通过保证子类的行为和父类一致,从而提高代码的可维护性和可扩展性。
接口隔离原则
- (Interface Segregation Principle,ISP)
- 一个类不应该依赖它不需要的接口,即一个类对其它类的依赖应该建立在最小的接口上。
- 这个原则强调的是接口设计的合理性,避免不必要的接口导致类之间的耦合性过高,从而提高代码的灵活性和可维护性。
依赖倒置原则
- (Dependency Inversion Principle,DIP)
- 依赖于抽象而不是依赖于具体实现。
- 这个原则强调的是代码的可扩展性和可维护性,通过抽象化来减少组件之间的耦合性,从而使得代码更加灵活、易于维护和扩展。
迪米特法则
- (Law of Demeter,LoD)
- 也叫最少知识原则(Least Knowledge Principle,LKP),
- 一个对象应当对其他对象有尽可能少的了解,不需要了解的内容尽量不要去了解。
- 这个原则强调的是组件之间的松耦合,通过减少组件之间的依赖关系,提高代码的可维护性和可重用性。
组合/聚合复用原则
- (Composite/Aggregate Reuse Principle,CARP)
- 尽量使用组合或聚合关系,而不是继承关系来达到代码复用的目的。
- 这个原则强调的是通过组合和聚合的方式来实现代码复用,避免继承带来的一些问题,如父类和子类之间的强耦合性,从而提高代码的灵活性和可维护性。