设计模式之软件设计七大原则

栏目: 后端 · 发布时间: 7年前

0x01.开闭原则

0x02.依赖倒置原则

0x03.单一职责原则

0x04.接口隔离原则

0x05.迪米特法则(最少知道原则)

0x06.里氏替换原则

  • 定义:如果对每一个类型为T1的对象o1,都有类型为T2的对象o2,使得以T1定义的所有程序P在所有的对象o1都替换成o2时,程序P的行为没有发生变化,那么类型T2是类型T1的子类型。
  • 定义扩展:一个软件实体如果适用一个父类的话,那一定适用于其子类,所有引用父类的地方必须能透明的使用其子类的对象,子类对象能够替换父类对象,而程序逻辑不变。
  • 引申意义:子类可以扩展父类的功能,但不能改变父类原有的功能。
  • 含义1:子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法
  • 含义2:子类中可以增加自己特有的方法
  • 含义3:当子类的方法重载父类的方法时,方法的前置条件(即方法的输入/入参)要比父类方法的输入参数更宽松。
  • 含义4:当子类的方法实现父类的方法时(重写/重载或实现抽象方法),方法的后置条件(即方法的输出/返回值)要比父类更严格或相等。
  • 优点1:约束继承泛滥,开闭原则的一种体现。
  • 优点2:加强程序的健壮性,同事变更时也可以做到非常好的兼容性,提高程序的维护性、扩展性。降低需求变更时引入的风险。
  • 样例代码: https://github.com/sigmako/design-pattern/tree/master/design-principle/src/main/java/org/ko/design/principle/liskovsubstitution

0x07.合成/复用原则(组合/复用原则)

0x08.代码工程

七大设计原则 : https://github.com/sigmako/design-pattern/tree/master/design-principle

0x09.参考


以上所述就是小编给大家介绍的《设计模式之软件设计七大原则》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

创业36条军规

创业36条军规

孙陶然 / 中信出版社 / 2011-12 / 39.00元

《创业36军规》的作者孙陶然是一位数次成功创业的创业者,书中的内容有关创业的方方面面,从创业目的到股东选择,从经营到管理,从找方向到项目细节不一而足,写给每位心怀创业理想或正在创业路上的读者。 很多教人成才的书,作者未必成才;很多教人炒股的书,作者并不炒股;很多教人创业的书,作者不曾成功创业。一起来看看 《创业36条军规》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

随机密码生成器
随机密码生成器

多种字符组合密码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具