美文网首页
设计模式

设计模式

作者: 唔笛plk | 来源:发表于2020-03-13 11:18 被阅读0次

    1.创建型模式(5种)

    这些设计模式提供了一种在创建对象的同时隐藏创建逻辑的方式,而不是使用 new 运算符直接实例化对象。这使得程序在判断针对某个给定实例需要创建哪些对象时更加灵活。

    • 工厂模式(Factory Pattern)(生产车胎的工厂
      抽象工厂模式(Abstract Factory Pattern)(生产 车胎工厂、生产发动机工厂、生产座椅工厂等一些列工厂)
    • 单例模式(Singleton Pattern)
    • 建造者模式(Builder Pattern)(可乐、薯条、鸡腿素材,搭配各种套餐)
    • 原型模式(Prototype Pattern)(复制克隆实例)

    2 结构型模式(8种)

    这些设计模式关注类和对象的组合。继承的概念被用来组合接口和定义组合对象获得新功能的方式。

    • 适配器模式(Adapter Pattern)(给某种东西另外一种东西功能,实际底层使用的的是另外一种功能,通过继承和依赖实现)
    • 桥接模式(Bridge Pattern)(在抽象层面实现依赖具体的实现类,使其新的子类能调用具体实现类的功能、实现抽象层与实现层分离)
    • 过滤器模式(Filter、Criteria Pattern)(典型的应用方法就是分组操作,可以根据指定的指标进行分组筛选)
    • 组合模式(Composite Pattern)(树形分叉结构,树枝和树叶通过同一实现类,树叶包含树枝,树枝包含树叶,如公司雇员结构)
    • 装饰器模式(Decorator Pattern)(与桥接模式类似,同样具体实现交给具体实现类,只是添加新的功能,不影响原有的具体实现类)
    • 外观模式(Facade Pattern)(即是把所有的操作接口,放到同一个类中调用,如电脑在开机前,已经把所有的硬件连接好了)
    • 享元模式(Flyweight Pattern)(换句话说就是共享对象,在某些对象需要重复创建,且最终只需要得到单一结果的情况下使用,如果在列表中已经存在,则复用)
    • 代理模式(Proxy Pattern)(增加中间层,如Windows 里面的快捷方式,真正实现相关功能不是快捷键上的符号)

    3 行为型模式(12种)

    这些设计模式特别关注对象之间的通信。

    • 责任链模式(Chain of Responsibility Pattern)(避免请求发送者与接收者耦合在一起,让多个对象都有可- 能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止,如:成语接龙)
    • 命令模式(Command Pattern)(将一个命令封装成一个对象,从而使不同的请求对客户进行参数化如股票操作员,对买家和卖家实现对象参数化,接受卖家和卖家命令 股票的卖家和卖家)
    • 解释器模式(Interpreter Pattern)(定义规则)
    • 迭代器模式(Iterator Pattern)(定义接口:hasNext, next)
    • 中介者模式(Mediator Pattern)(中心论 聊天室)
    • 备忘录模式(Memento Pattern)(另外的列表存储状态)
    • 观察者模式(Observer Pattern)(广播)
    • 状态模式(State Pattern)(随着状态改变,改变执行方法)
    • 空对象模式(Null Object Pattern)(创建为空的对象)
    • 策略模式(Strategy Pattern)(事先制定策略,执行中不改变)
    • 模板模式(Template Pattern)(在抽象方法中,定义多个之类执行的顺序)
    • 访问者模式(Visitor Pattern)(数据结构与数据操作分离,解决稳定的数据结构和易变的操作耦合问题、在数据基础类里面有一个方法接受访问者,将自身引用传入访问)

    J2EE 模式

    这些设计模式特别关注表示层。这些模式是由 Sun Java Center 鉴定的。

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

    相关文章

      网友评论

          本文标题:设计模式

          本文链接:https://www.haomeiwen.com/subject/pchisctx.html