23种设计模式+六大基本原则
来源:互联网 发布:汉朝皇帝知乎 编辑:程序博客网 时间:2024/06/13 01:37
最近刚把《大话设计模式》看完,感觉这本书讲的还是很生动的。下面的几篇博客我将对其中的23种设计模式进行详细讲解,这篇博客先简单列举一下23种设计模式的名字以及我对六大基本原则的简单理解。
创建型模式:
工厂方法模式
抽象工厂模式
原型模式
建造者模式
单例模式
结构型模式:
装饰模式
代理模式
适配器模式
享元模式
外观模式
组合模式
桥接模式
行为型模式:
策略模式
模板方法模式
观察者模式
状态模式
备忘录模式
迭代器模式
命令模式
职责链模式
中介者模式
解释器模式
访问者模式
六大原则:
1、单一职责原则:书上比较官方的说法是 “就一个类而言,应该只有一个引起他变化的原因。”。其实直白点说就是一个类的功能尽量简单,避免一个类中封装过多的功能方法,在设计类的时候避免让它太过庞大。
2、开闭原则:对扩展开放,对修改关闭。也就是说,当需求变更的时候,尽量不要去修改原有代码,而是去增加新的代码。
3、里氏代换原则:在程序中,子类可以替换掉父类并且不会对程序的运行结果造成影响。这里一个比较典型的例子就是鸵鸟是鸟吗?在生物学中,鸵鸟是鸟的一种,但是在面向对象的世界里,鸵鸟不是鸟。因为如果把鸟看成一个类的话,鸟一定会有一个飞的方法,而鸵鸟不会飞,因此鸵鸟不能够继承鸟类。
4、依赖倒置原则:抽象不依赖细节,细节依赖抽象。其实这也就是让我们在程序开发时,面对接口编程而不是实现。
5、合成聚合复用原则:要理解这个原则首先要明白合成和聚合的概念。举个栗子,大雁和翅膀的生命周期是一样的,因此大雁和翅膀属于合成关系。而雁群和大雁则是一种聚合关系。当我们可以使用合成或者聚合的时候,就尽量不要使用继承了,这样其实也是减少了类之间的耦合,避免一个类因为多层继承而显得很庞大。
6、迪米特法则(最少知道原则):如果两个类不必彼此直接通讯,那么这两个类就不应该直接发生作用。这就要求我们在设计类的时候,尽量降低类的成员的访问权限。它的根本思想其实也是松耦合。
- 23种设计模式+六大基本原则
- 设计模式六大基本原则
- 设计模式之六大基本原则
- 设计模式中的六大基本原则
- 设计模式指六大基本原则
- 设计模式的六大基本原则:
- 设计模式遵循的六大基本原则
- 面向对象六大基本原则、设计模式、工程模式
- 设计模式六大基本原则之二:里氏替换原则
- 面向对象设计六大基本原则
- java开发设计六大基本原则
- java开发设计六大基本原则
- java开发设计六大基本原则
- 23种 设计模式---面向对象的基本原则
- JAVA的23种设计模式---前置:6大基本原则
- 面向对象设计的六大基本原则(设计模式6大原则)
- 23种设计模式-设计模式六大原则
- 23种设计模式-设计模式六大原则
- POJ 3617 Best Cow Line [贪心] 《挑战程序设计竞赛》2.2
- JS常用方法
- 数量金融学(5):CPPI策略
- android QMI机制---概论
- DMMS工具介绍-更改Android虚拟机默认安装位置
- 23种设计模式+六大基本原则
- OriginPro2017绘制四维散点图(三维散点+一维颜色)
- View的滑动冲突处理
- eclipse从svn导入项目遇到的坑?
- 从MySQL Bug#67718浅谈B+树索引的分裂优化
- mysql-5.6.30-linux-glibc2.5-x86_64.tar.gz 安装
- React-Native自定义PopupWindow实现
- Java 并发编程 CAS
- Scala访问修饰符可见性问题(对比Java)