【设计模式——六原则】

前言:

在学习设计模式的时候,贯穿二十三个设计模式的始终——设计模式六原则,单一职责原则、开放—封闭原则、依赖倒转原则、迪米特原则、里氏代换原则、合成—聚合复用原则。六大原则,在设计模式的比赛中充当的裁判员的角色。

核心:

·单一职责原则


1.定义

就一个类而言,应该仅有一个引起它变化的原因。

2.实例

手机职责过多,延误拍摄UFO。

3.注意

编程时,在类的职责上多思考,做到单一原则,这样的代码才是易扩展、易维护、易复用,灵活多样。

·开放—封闭原则

1.定义

是说软件实体(类、模块、函数等等)应该可以扩展,但是不可修改。
特征:
对于扩展是开放的!
对于更改是封闭的!
面对需求的更改,保持相对稳定,使软件不断更新。——开发—封闭原则的启示。

2.实例

对于按时上班,员工迟到现象,解决问题的关键:对工作时间和业绩成效的修改关闭,对时间制度扩展开放。

3.注意

开放—封闭原则是面向对象设计的核心,绝对的封闭是不存在的,我们在设计的时候,时刻考虑让这个类足够好。在面对需求时,对程序的改动是增加新代码,而不是更改先有代码。


·依赖倒转原则

1.定义

高层模块不依赖低层模块,两个都应该依赖抽象
抽象不应该依赖细节,细节应该依赖抽象

2.实例

电脑的主板、CPU、内存等都是针对接口编程,如果针对实现编程,内存需要对应品牌的主板,若换内存就要换对应的主板。

3.注意

针对接口编程,不要对实现编程

·迪米特原则

1.定义

也叫最少知识法则。如果两个类彼此不需要直接通信,那么这两个类,就不应当发生直接的相互作用。如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转达这个调用。

2.实例

在公司,自己电脑出现了问题直接找IT部的主管,而不需要和公司的其他员工联系,主管会派人员前来维修。

3.注意

强调类之间的松耦合


·里氏转换原则

1.定义

子类型必须能够替换掉它们的父类型。
使继承复用成了可能。

2.实例

猫继承动物,拥有动物吃、跑、叫等行为,如果想要一个狗、牛等,除了更改实例化,其他地方不需要改变。

3.注意

子类继承父类所有非Private的属性和行为。


·合成—聚合复用原则

1.定义

尽量使用合成/聚合,尽量不要使用类继承。


·聚合:是一种弱的拥有关系,A对象包含B对象,但是B不是A的一部分
·合成:是一种强的拥有关系,体现了严格的整体和部分之间的关系,部分和整体的生命周期一样。


2.注意

优先使用对象的合成和聚合。

总结:
设计模式六原则,体现在程序的设计当中,在编程的过程之中,考虑原则,使得自己设计的代码编程的更好!

你可能感兴趣的:(●【编程语言】,———【设计模式】)