关于设计模式


懒得手打了直接去看Java设计模式:23种设计模式全面解析(超级详细) (biancheng.net)

但是有几个点要注意:

  1. 面向对象设计原则虽然被分成了7条,但本质上可以分为5组:
    1. 开闭原则:需求改变时,无需推倒重来,直接进行扩展;对扩展开放,对修改关闭
    2. 里氏替换+合成复用:尽量使用组合聚合代替继承,否则继承必须确保基类所拥有的性质在子类中仍然成立
    3. 依赖倒置:要面向接口编程,一切都依赖于接口
    4. 约束原则:单一职责(约束类)+接口隔离(约束接口):类只承担单一任务;接口只承担类的专有任务,不提倡建立泛用接口
    5. 迪米特法则:只与你的直接朋友交谈,不跟“陌生人”说话——降低类之间的耦合度

这些原则的目的只有一个:降低对象之间的耦合,增加程序的可复用性、可扩展性和可维护性。

相关