设计模式(Design pattern)简介

155 阅读2分钟

内容

  • 尽量使用合成/聚合的方式,而不是继承。

合成(组合)与聚合辨析

组合:整体与部分的关系,且类的实例与其内部的对象在生命期上保持一致,同时创建和销毁。另外,组合不允许有组合回路,否则编译不报错,但是运行时将会出现StackOverflowException 的异常导致程序终止 聚合:整体与部分的关系,且类的实例与其内部的对象不具有生命期的一致性,只是对另一个对象的引用,并不拥有其生命周期的管理权,但是含有整体与部分的意义。另外,聚合允许有组合回路,其内部对象只是以引用的形式存在,不具备对其生命周期的管理,这也是聚合与组合之间的最大区别。 转载于:www.cnblogs.com/seanyao/arc…

设计原则的核心思想

  • 找出应用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
  • 针对接口编程,而不是针对实现编程。
  • 为了交互对象之间的松耦合设计而努力。

设计模式介绍

  • 设计模式是程序员在面对同类软件工程设计问题所总结出来的有用经验,模式不是代码,而是某类问题的通用解决方案。设计模式代表了最佳的实践,这些解决方案是众多软件开发人员经过相当长的一段时间的实验和错误总结出来的。
  • 设计模式的本质是提高软件的维护性,通用性和扩展性,并降低软件的复杂度。

设计模式分类

设计模式分为三种类型,共23种

创建型模式

  • 单例模式
  • 抽象工厂模式
  • 原型模式
  • 建造者模式
  • 工厂模式

结构型模式

  • 适配器模式
  • 桥接模式
  • 装饰模式
  • 组合模式
  • 外观模式
  • 享元模式
  • 代理模式

行为型模式

  • 模板方法模式
  • 命令模式
  • 访问者模式
  • 迭代器模式
  • 观察者模式
  • 中介者模式
  • 备忘录模式
  • 解释器模式
  • 状态模式
  • 策略模式
  • 职责链模式