zoukankan      html  css  js  c++  java
  • 设计模式学习总结

    设计模式中的原则

    核心原则是:开放封闭原则

    实现方法:面向接口编程。对接口的修改封闭,对实现的修改开放。 

    面向接口编程,遵循的是依赖倒置原则,实现上要求支持里氏替换原则。 

    对接口的设计要遵循最小接口原则、迪米特法则。 

    通过组合、聚合复用已有对象的功能。 

    通过继承隔离变化。

    典型模式要点

    factory模式,封装了单个对象的构造过程。使用者只看到接口,不用看到具体的实现。

    abstract factory 模式,封装了一系列、多个对象的构造。

    builder模式,应用于复杂对象的构建,将构建分解为多个步骤,每个步骤都可变化。

    其它模式:Singleton,Prototype

    bridge模式:适用于两个纬度的变化。 抽象类加继承支持一个纬度的变化。 桥模式将接口和实现通过组合的方式联系,实现了解耦。

    composite和decorator模式:两者有一个共同的特性,从抽象接口派生出不同功能的子类。composite模式从component派生出leaf和composite, decorator模式派生出concreteComponent和Decorator。这样达到了接口一致,功能对客户透明的目的。

    visitor模式提供了一种类似回调函数的机制,在结构不变的情况下,提供了功能扩展的通道。

    Adapter, Proxy:通过组合,将外部的访问进行转换。

    其它模式:Facade,Flyweight

    Command,state,strategy模式类似,依次封装的是:命令、状态、算法。通过接口和特化实现对变化的封装。先定义多个实例,在context中选择具体的实例。

    Observer, Chain of Responsibility:处理一对多的关系。前者需要多个对象都做出响应,后者只需要从多个对象中选择一个进行处理。

    Mediator:处理多个对象相互访问的关系。

    Iterator:提供对象内部元素的访问。

    Template Method:封装对象行为子步骤的的变化。

    其它模式:Interpreter,Memento。

    设计模式学习资料

    深入浅出设计模式

    设计模式

    李建忠,“C#面向对象设计模式纵横谈系列课程

    吕震宇,“C#设计模式

    设计模式随笔系列:开篇-模式和原则 

  • 相关阅读:
    python百度ai的银行卡识别代码
    python百度ai的身份证识别代码
    Linux下安装jupyter
    HADOOP 与 jupyterlab 链接
    csv文件数据导出到mongo数据库
    Contos7 常用命令
    centos 安装Python3 及对应的pip
    PHP 连接数据库
    java 注解学习记录
    java简单实现搜索指定后缀文件
  • 原文地址:https://www.cnblogs.com/weichsel/p/1826301.html
Copyright © 2011-2022 走看看