设计原则
星光不问赶路人º
道路越是煎熬,就越坦然面对微笑;风浪刮得越高,就要越心高气傲
展开
-
七大设计原则(一):开闭原则
定义一个软件实体,如类、模块、函数应该对扩展开放,对修改关闭。强调用抽象构建框架,用实现扩展细节。ps:抽象灵活性好,适应性广,只要抽象的合理,可以基本保持软件架构的稳定。而软件中易变的细节,我们用从抽象派生的实现类来进行扩展,当软件需要发生变化时,我们只需要根据需求重新派生一个实现类来扩展就可以了。优点提高软件系统的可复用性及可维护性。就用简介的代码实现开闭原则。定义一个接口。...原创 2019-05-14 14:24:17 · 1144 阅读 · 0 评论 -
七大设计原则(二):依赖倒置原则
参考慕课网视频《Java设计模式精讲》:原文作者:Geely原文链接:慕课视频链接 https://coding.imooc.com/lesson/270.html#mid=17147定义高层模块不应该依赖低层模块,二者都应该依赖其抽象。强调抽象不应该依赖细节,细节应该依赖抽象。针对接口编程,不要针对实现编程。优点可以减少类间的耦合性、提高系统稳定性,提高代码可读性和可维护性...原创 2019-05-14 14:37:46 · 253 阅读 · 0 评论 -
七大设计原则(三):单一职责原则
参考慕课网视频《Java设计模式精讲》:视频作者:Geely视频链接:https://coding.imooc.com/lesson/270.html#mid=17151定义不要存在多于一个导致类变更的原因。一个类、接口、方法只负责一项职责。优点降低类的复杂度、提高类的可读性,提高系统的可维护性、降低变更引起的风险。代码实现下面就以一个故事切入话题。清风先生的朋友自制了一款M...原创 2019-05-15 18:42:39 · 171 阅读 · 0 评论 -
七大设计原则(四):接口隔离原则
参考慕课网视频《Java设计模式精讲》:视频作者:Geely视频链接:https://coding.imooc.com/lesson/270.html#mid=17152定义用多个专门的接口,而不使用单一的总接口。客户端不应该依赖它不需要的接口。强调一个类对一个类的依赖应该建立在最小的接口上。建立单一接口,不要建立庞大臃肿的接口。尽量细化接口,接口中的方法尽量少。优点符...原创 2019-05-15 19:29:42 · 230 阅读 · 0 评论 -
七大设计原则(五):迪米特原则
参考慕课网视频《Java设计模式精讲》:视频作者:Geely视频链接:https://coding.imooc.com/lesson/270.html#mid=17153定义一个对象应该对其他对象保持最少的了解,又叫最少知道原则。尽量降低类与类之间的耦合。优点降低类之间的耦合。强调只和朋友交流,不和陌生人说话。朋友:出现在成员变量、方法的输入,输出参数中的类称为成员朋友类,...原创 2019-05-18 14:51:38 · 247 阅读 · 0 评论 -
七大设计原则(六):里氏替换原则
参考慕课网视频《Java设计模式精讲》:视频作者:Geely视频链接:https://coding.imooc.com/lesson/270.html#mid=17155定义如果对每一个类型为T1的对象o1,都有类型为T2的对象o2,使得以T1定义的所有程序P在所有的对象o1都替换成o2时,程序P的行为没有发生变化,那么类型T2是类型T1的子类型。定义扩展一个软件实体如果适用一个父...原创 2019-05-18 16:32:43 · 334 阅读 · 1 评论 -
七大设计原则(七):合成复用原则
参考慕课网视频《Java设计模式精讲》:视频作者:Geely视频链接:https://coding.imooc.com/lesson/270.html#mid=17156定义尽量使用对象组合/聚合,而不是继承关系达到软件复用的目的。聚合has-A、组合contains-A、继承is-A优点可以使系统更加灵活,降低类与类之间的耦合度,一个类的变化对其他类造成的影响相对较少。代码实...原创 2019-05-18 17:11:07 · 565 阅读 · 0 评论