大话设计模式 笔记

  • 工厂模式:用一个单独的类来做这个创造实例的过程
  • 策略模式:定义算法家族,互相替换时候不会影响客户端
  • 单一职责原则:就一个类而言,应该仅有一个引起它变化的原因
  • 开放-封闭原则:软件应可扩展,但是不可修改
  • 依赖倒转原则:抽象不应该依赖细节,细节应该依赖于抽象;针对接口编程而不是实现
  • 里氏代换原则:子类型必须能够替换他们的父类型
  • 装饰模式:动态的给对象生成一些额外的职责
  • 代理模式:代理实现相同接口,在实现方法中调用被代理类相关方法【为其他对象提供一个方法以控制对于这个对象的访问】
  • 工厂方法:使一个雷的实例化延迟到子类,解决普通工厂对于开放-封闭的违反
  • 原型模式:深拷贝原有对象
  • 模板方法模式:定义骨架,将步骤实现延迟到子类中
  • 迪米特法则:两个类之间不必直接通信,就不应当发生直接作用。可通过第三方转发调用
  • 外观模式:为子系统定义高层接口,使得更佳容易使用:在设计初期就要有意识的将不同的两个层分离
  • 建造者模式:将复杂对象的构建和表示分离,使得同样的构建过程可以创建不同的表示;同时需要一个指挥者来隔离用户和建造过程的关系。
  • 观察者模式:让多个观察者同时监听一个主题对象,主题对象变化时候回通知所有观察者对象来自动更新自己。进一步通过事件委托实现。
  • 反射:Assembly.Load(“程序集”).CreateInstance(“命名空间.类名”);反射+配置文件实现数据访问程序
  • 状态模式:一个对象内在状态改变时候允许改变其行为,就像改变了类一样
  • 适配器模式:将一个类的接口装换成客户希望的另外一个接口,增强接口兼容性
  • 组合模式:使用户对于单个对象和组合对象的使用具有一致性。
  • 迭代器模式:提供一个方法顺序表示对象内容,但是不暴露内存分布
  • 单例模式:保证一个类仅有一个实例(private构造),并提供一个访问全局点;多线程需要加锁构造临界区。
  • 聚合、合成原则:优先使用类聚合(合成),而不是继承
  • 桥接模式:抽象与实现分离,使之可以独立变化
  • 命令模式:将请求封装,对客户参数化;对请求排队或记录请求日志,支持可撤销的操作。
  • 职责链模式:通过继承实现
  • 中介者模式:用一个中介对象来封装一系列的对象交互。
  • 享元模式:运用共享技术有效地支持大量细粒度的对象
  • 访问者模式:解耦数据和操作
阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭