【设计模式】六大设计原则

六大设计原则

单一职责

  • 定义
    每个类都应该有一个单一的功能
    一个类或者模块应该有且只有一个改变的原因

  • 规范
    定义类的方法
    避免类之间耦合度太高


里氏替换

  • 定义
    只要有父类出现的地方,都可以用子类来替代

  • 规范
    不要破坏继承体系
    增加子类的时候系统可以正常执行


依赖倒置原则

  • 定义
    高层模块不应该依赖底层模块,应该依赖其抽象
    抽象不应该依赖细节,细节应该依赖抽象

  • 规范
    面向接口编程
    结合里氏替换原则使用


接口隔离原则

  • 定义
    客户端应该依赖最小的接口上
    客户端不应依赖它不需要的接口

  • 规范
    接口方法应该尽量细化 (单一职责)


迪米特法则

  • 定义
    最少知道原则
    一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立。

  • 规范
    降低类之间的耦合度,提高模块的相对独立性
    提高了类的可复用率和系统的扩展性


开闭原则

  • 定义
    对扩展开放,对修改关闭

  • 规范
    尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化