0%

设计模式导论

设计模式的概念

模式:不断重复发生的问题及其解决方案

软件设计的目的:高效的解决问题,代码结构清晰,功能灵活多变

设计模式:对开发过程中常见的问题给出的高效的解决方案

抽象: 忽略非本质的细节,对对象的一种泛化与理想化的处理

深入理解面向对象

面向对象向下(三大机制)

  • 封装,隐藏内部实现
  • 继承,复用现有代码
  • 多态,改写对象行为

面向对象向上(抽象思维)

  • 对象怎么设计—-对内
  • 对象怎么封装—-对外
  • 整体的组织结构—-彼此之间

早绑定与晚绑定

  • 早绑定:子模块先存在,再有架构。程序调库。
  • 晚绑定:先有框架,再实现子模块。各种插件。
  • 早绑定与晚绑定的对比,代码修改时,早绑定,子模块的修改,将导致整个程序无法使用,晚绑定则不会

重构

重构获得模式

​ 不要过度使用设计模式,除非能准确预判到结构的变化,不然可以等变化发生时,重构代码时使用设计模式,否则只是浪费时间,写出一堆自我满足感觉良好,而无实际作用的代码

重构关键技术

继承 -> 组合(解耦),紧耦合 -> 松耦合,其他都是讲早晚绑定问题

  • 静态 -> 动态
  • 早绑定 -> 晚绑定
  • 继承 -> 组合
  • 编译时依赖 -> 运行时依赖
  • 紧耦合 -> 松耦合