【Design pattern】设计模式思路总结(一)

看了一周的设计模式,跟着小菜的思路走!

从简单工厂过渡策略,后面看的这几个模式都是在单一职责,开放——封闭原则,依赖倒转原则下不断的改进,采用模式写出的代码更容易扩展,维护!

比较容易懂。

装饰模式:一开始我想为什么不用简单工厂/策略,后来发现服饰类并不是人类的子类,所以不能继承人类。服饰类不断的增加,所有就要抽象隔离这种变化,服饰类的特点:子类调用顺序和调用与否是不确定,通过调用服饰类来间接调用服饰类子类!


代理模式:

代理和追求者中都实现接口
实现的方式不同
追求者:通过代码实现了接口
代理:通过在自己的类中调用追求者的方法实现接口
代理的存在使得访问对象变间接,但这种间接的好处,我还没有具体用到,用到再体会吧!


工厂模式:从简单工厂——工厂——抽象工厂,都采用“工厂”。

简单工厂:解决子类实例化太多的问题,子类继承父类
工厂:抽象接口,子类实现接口,子类只是为了实现这个接口而继承,不是父子关系
抽象工厂:增加产品个数,所有的父类子类不再是为单个功能,要能够适应多种功能的变化!


原型模式

这里第一次接触到可以直接调用的模式,从一个对象在创建另一个可定制对象而不需要知道创建细节,从传值——传引用,传引用中从浅复制——深复制!一步步改进面对对象!


模板模式:

最大程度的让重复代码上升到父类
适用于完成某一细节层次一致的一个过程或一系列步骤,但更详细的步骤在更详细的层次上实现可能不同时,考虑模板方法!

外观模式
多个类,他们有相同的方法,使用时各自调用,但可以同时调用
将多个类在同一个类中实例化,统一调用方法,在三层架构中,层与层分离,在层与层之间使用这种模式!

建造者模式:创建一些复杂的对象,对象内部构件间的建造顺序通常是稳定的,但对象构件通常面临复杂变化

建造者类:
1.人类(父类),部分用抽象表示
2.不同类型的人类,各自表示出来
3.指挥者建造人类中包含了一个人类构件的所有步骤

指挥者用来指挥建造过程,控制建造顺序;建造者负责建造不同类型内部的构件!


观察者模式:一对多的依赖关系,过个观察者依赖一个主题对象,在主题对象发生变化,通知所有观察者对象更新自己!

在不断解耦的过程中,用到了委托,主题对象将自己不能完成的事通过委托让能够完成这件事的观察者完成!


状态模式:

由于类中的方法过长
为了消除强大的条件分支语句
当一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为时,就可以考虑使用状态模式

适配器模式:

预防接口不匹配的问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值