设计模式(1)设计模式分类

设计模式的六大原则

1.单一职责原则(类)

不要存在多于一个导致类变更的原因,也就是说一个类只需要实现单一的职责,如若不然,就应该把类拆分。
如:类A分别负责职责P1和职责P2,当职责P1发生变动需要修改类时,会引起原来正常工作的P2发生故障,类A即违反了单一原则。

2.里氏替换原则(继承)

里氏替换原则是面向对象设计的基本原则之一。
里氏替换原则是继承复用的基石,指任何基类可以出现的地方,子类一定可以出现。只有子类可以替换掉基类,而业务功能不受影响时,基类才能真正被复用。
(注意继承和多态是两种概念)
在里氏替换原则中,子类在扩展父类的功能时,尽量不要重写或重载父类的方法。

3.依赖倒转原则(接口)

面向接口编程,依赖于抽象而不依赖于具体;写代码时需要用到具体类时,不直接与具体类打交道,而与具体类的上层接口交互。

4.接口隔离原则(接口)

每个接口中不存在子类用不到而必须要实现的方法,如果不然,则需要将接口拆分成多个接口;使用多个隔离的接口,比使用单个接口(多个接口方法集合到一个接口)要好的多。

5.迪米特法则(类关系)

又称最少知道法则,分为两部分理解:
1.减少对朋友的了解,一个类对自己依赖的类应当尽可能少的了解;也就是说无论被依赖的类多么复杂,都应该将逻辑封装在方法的内部,通过public方法提供给外部,这样当被依赖的类变化时,才能最小的影响该类。
2.只和朋友说话:强调不和陌生人说话,只和朋友交流,减少类之间的耦合(如果其中一个类需要调用另一类的某一个方法的话,可以通过第三者转发这个调用)。
这里的朋友指的是有依赖和关联关系的类

6.合成复用原则(类关系)

尽量首先使用组合/聚合的方式,而不是使用继承。

注:UML中依赖(单向、临时的、偶然的、关系非常弱)、关联(长期的、单、双向、一个类知道另一个类的方法和属性)、聚合(特殊关联,整体和部分可以分开)、组合(特殊关联,整体和部分不可以分开)

设计模式三大类

创建型模式(5)

作用:创建型模式与对象的创建有关。

相关模式:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。

结构型模式(7)

作用:结构型模式处理类或对象的组合。

相关模式:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。

行为型模式(11)

作用:行为型模式对类或者对象怎样交互和怎样分配职责进行描述。

相关模式:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

另外还有两类单独计算,并发型模式和线程池模式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值