设计模式->设计模式总结

三大类型设计模式,概念先摆出来(是不是可以理解在设计模式基础上又抽象了一把呢,厉害吧)

创建型模式:核心在对象如何创建

什么在代码里面使用new,low不low,是不是有人常说不要再代码里面创建对象,要使用依赖注入或者控制反转。换成白话就是不要在代码里面用new。程序需要什么对象的时候,创建一个对象给他,注入给他,而不是在程序里面new。

还是那个例子,弟弟要学习了,要一个教学器,怎么办,在弟弟学习的方法中使用new创建一个姐姐或者老师吗,NO,NO,NO,弟弟今天不喜欢姐姐教怎么办,重新new个老师。最好是给弟弟一个教学器,在学习的方法中通过参数注入对象,或者从构造方法中注入对象,给你教学器,今天想姐姐用姐姐,想老师用老师。好不好,灵活吗。不够高大上,给个高大上的叫法,叫依赖注入,或者控制反转,瞬间高大上了有没有。

这一类有哪些设计模式呢,以下都是:

    1. 工厂模式(Factory Pattern)
    2. 抽象工厂模式(Abstract Factory Pattern)
    3. 单例模式(Singleton Pattern)
    4. 建造者模式(Builder Pattern)
    5. 原型模式(Prototype Pattern)

结构型模式:这些设计模式关注类和对象的组合

继承的概念被用来组合接口和定义组合对象获得新功能的方式。核心呢,类是怎么形成的,对象是如何组织的,说实话和行为模式,我有点分不清,核心有差异吧,这个是对象如何组合而行为模式是对象如何交互。神马,听不懂,就是如何把对象组织起来,不是仅仅一个对象了,多个对象了,如何组织起来。比如观察者模式,有目标(被观察者)和观察者,两个对象了,如何组织。又比如,我要一只鸡,你给我了一只鸭,我怎么办,哭吗,当然不是,要解决问题,把鸭变成鸡,神马,你是上帝,我当然不是上帝,我只是抽象出了一个鸡的类,然后有个鸡类转换器,把鸭子变成了鸡而已。

这类模式有以下几种:

    1. 适配器模式(Adapter Pattern)
    2. 桥接模式(Bridge Pattern)
    3. 过滤器模式(Filter、Criteria Pattern)
    4. 组合模式(Composite Pattern)
    5. 装饰器模式(Decorator Pattern)
    6. 外观模式(Facade Pattern)
    7. 享元模式(Flyweight Pattern)
    8. 代理模式(Proxy Pattern)

 

行为型模式:对象之间如何交互,就是对象之间如何发生点什么

交互的本质是什么,是信息啊,抽象点,这个行为是什么,就是通信。我们和服务怎么通信,服务处理完逻辑,将成果写在statis_v2那张数据表里面了,我们从数据表里面拿数据,这本质数据表就是我们WEB和服务的通信方式,这个通信的媒介是什么,是数据表啊。行为型模式,就是处理我们WEB和服务的行为的啊。

这类设计模式有以下几种:

  1. 责任链模式(Chain of Responsibility Pattern)
    1. 命令模式(Command Pattern)
    2. 解释器模式(Interpreter Pattern)
    3. 迭代器模式(Iterator Pattern)
    4. 中介者模式(Mediator Pattern)
    5. 备忘录模式(Memento Pattern)
    6. 观察者模式(Observer Pattern)
    7. 状态模式(State Pattern)
    8. 空对象模式(Null Object Pattern)
    9. 策略模式(Strategy Pattern)
    10. 模板模式(Template Pattern)
    11. 访问者模式(Visitor Pattern)

 

 

其它模式:J2EE 模式 关注整个事务流程

怎么样回到面向过程了吗,这就是我说的面向对象和面向过程两者你中有我,我中有你,是这个意思吧。

 

该类设计模式有以下几种:

    1. MVC 模式(MVC Pattern)
    2. 业务代表模式(Business Delegate Pattern)
    3. 组合实体模式(Composite Entity Pattern)
    4. 数据访问对象模式(Data Access Object Pattern)
    5. 前端控制器模式(Front Controller Pattern)
    6. 拦截过滤器模式(Intercepting Filter Pattern)
    7. 服务定位器模式(Service Locator Pattern)
    8. 传输对象模式(Transfer Object Pattern)

总结下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值