
——【设计模式六大原则】
文章平均质量分 82
白衣染霜陈
你只管努力,剩下的交给时光。
展开
-
设计模式六大原则(1):单一职责原则
单一职责原则的核心精神是: 一个类,或者一个接口,最好只做一件事情, 当发生变化时,他只能受到单一的影响; 因为职责过多,可能引起变化的原因将会很多, 这样导致职责和功能上的依赖,将严重影响其内聚性和耦合度,混乱由此而生。 例子: 单一职责的原则在现实生活中早就实践于现代公司体制与工业生产上, 如公司的各个部门职责分明相互独立,生产流水线的某一环节只需关注原创 2016-01-24 00:58:06 · 817 阅读 · 0 评论 -
设计模式六大原则(2):里氏替换原则
里氏替换原则: 核心精神: 在使用基类的的地方可以任意使用其子类,能保证子类完美替换基类; 这一精神其实是对继承机制约束规范的体现。 在父类和子类的具体实现中,严格控制继承层次中的关系特征,以保证用子类替换基类时,程序行为不发生问题,且能正常进行下去。 里氏替换原则主要发力点是继承基础上的抽象和多态,具体就是子类必须实现父类的方法,是重写;原创 2016-01-24 23:36:04 · 2051 阅读 · 0 评论 -
设计模式六大原则(3):依赖倒置原则
定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。 问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险。 解决方案:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接原创 2016-01-25 00:49:58 · 437 阅读 · 0 评论 -
设计模式六大原则(4):接口隔离原则
定义:客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。 问题由来:类A通过接口I依赖类B,类C通过接口I依赖类D,如果接口I对于类A和类B来说不是最小接口,则类B和类D必须去实现他们不需要的方法。 解决方案:将臃肿的接口I拆分为独立的几个接口,类A和类C分别与他们需要的接口建立依赖关系。也就是采用接口隔离原则。 举例来说明接口隔离原则: (图1 未遵原创 2016-01-25 00:51:16 · 467 阅读 · 0 评论 -
设计模式六大原则(5):迪米特法则
定义:一个对象应该对其他对象保持最少的了解。 问题由来:类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也越大。 解决方案:尽量降低类与类之间的耦合。 自从我们接触编程开始,就知道了软件编程的总的原则:低耦合,高内聚。无论是面向过程编程还是面向对象编程,只有使各个模块之间的耦合尽量的低,才能提高代码的复用率。低耦合的优点不言而喻,但是怎么样编程才能做到低耦合呢?那正是原创 2016-01-25 00:51:50 · 367 阅读 · 0 评论 -
设计模式六大原则(6):开闭原则
定义:一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。 问题由来:在软件的生命周期内,因为变化、升级和维护等原因需要对软件原有代码进行修改时,可能会给旧代码中引入错误,也可能会使我们不得不对整个功能进行重构,并且需要原有代码经过重新测试。 解决方案:当软件需要变化时,尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现变化。 开闭原则是面向对象设计中最基础的设计原则,原创 2016-01-25 00:52:26 · 454 阅读 · 0 评论 -
设计模式的六大原则
说到设计模式,就不得不提设计模式的六大原则 设计模式的六大原则 1、开闭原则(Open Close Principle) 开闭原则就是说对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。所以一句话概括就是:为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设原创 2016-01-24 00:18:39 · 534 阅读 · 0 评论