这个小结是在我总结完设计模式的一周之后进行的,有些自己的想法,对于每一个模式的理解都是我总结出来的东西,所以分享给大家。
导图:
模式系列:
模式: | 描述 | ||||||||||
简单工厂模式: | 用一个简单工厂类来调用需要的功能类进行实例化 | ||||||||||
策略模式: | 根据不同的情况调用不同的策略类,实现多功能化,添加策略只需要添加策略类就行了 | ||||||||||
装饰模式: | 多种功能动态的添加进去,需要时候使用 | ||||||||||
代理模式: | 提供另外一种访问功能的方法 | ||||||||||
工厂方法模式: | 与简单工厂类似,具体到其工厂子类来实例化 | ||||||||||
原型模式: | 声明一个克隆类对原型进行克隆操作,并实例化这些拷贝 | ||||||||||
模板方法模式: | 子类重写父类中的模板方法以达到自身特殊化的目的 | ||||||||||
外观模式: | 也是通过第三方委托了实现功能,只不过不需要知道是怎么实现的 | ||||||||||
建造者模式: | 构建与表示分离,统一重复的内容就不会出错 | ||||||||||
观察者模式: | 抽象观察者功能,所有对象指向观察者,观察者有改变通知所有对象 | ||||||||||
抽象工厂模式: | 在简单工厂的基础上把所有的父类抽象,并且变成接口供使用,父类也是可以变化的(在实现上) | ||||||||||
状态模式: | 多状态的判断简化,增加逻辑性,主要是对于不同时间不同状态的传递 | ||||||||||
适配器模式: | 用继承重写现有接口以达到使用的目的 | ||||||||||
备忘录模式: | 和备份类似,可以预先保存状态以备还原 | ||||||||||
组合模式: | 协助分层处理,管理对象只有节点对象和枝末对象之分 | ||||||||||
迭代器模式: | 遍历的代码体现,用枚举 | ||||||||||
单例模式: | 创建对象时判断是否重复,保证全局只有一个实例 | ||||||||||
桥接模式: | 抽象与实现部分分离,,使他们都可以独立变化,用到聚合来关联 | ||||||||||
命令模式: | 把请求封装化(命令队列),可以支持撤销化的操作 | ||||||||||
职责链模式: | 对功能的请求沿着职责链进行传递,传递参数在主要控制类中 | ||||||||||
中介者模式: | 中介对象来封装其他对象交互的功能,使其他对象之间不会产生过多联系 | ||||||||||
享元模式: | 多个项目共享同一个技术支持,取自己所需要的 | ||||||||||
解释器模式: | 定义一个新的语法来解释现有问题 | ||||||||||
访问者模式: | 状态类和对象类相互访问以达到复用状态和对象的目的 |
原则系列:
原则: | 描述 | ||||||||||
单一职责原则: | 一个类或对象只有一个功能,有一个变量可以调用 | ||||||||||
开放封闭原则: | 对扩展开放,对更改封闭 | ||||||||||
依赖倒转原则: | 模块依赖抽象,细节依赖抽象 | ||||||||||
里氏代换原则: | 子类可以替换父类 | ||||||||||
迪米特法则: | 耦合尽量少的原则,可以引入第三方类来实现 | ||||||||||
合成聚合原则: | 尽量使用聚合和组合,尽量不用继承 |
设计模式的分类总结,以后会逐步的写出来,以上就是我对设计模式最初步和浅显的印象,希望大家多提出宝贵的意见。