[笔记] 设计模式 面向对象设计原则

  • 课程目标
    • 面向对象设计原则
  • 原则概述
    • 可维护性
      • 指的是软件可以很方便的理解、改正、适应和拓展的难易程度
      • 就是方不方便修改了的意思
    • 可复用性
      • 指的是软件能被重复使用的难易程度
    • 指导性原则
    • 用于评价一个设计模式的使用效果的重要指标之一
    • 为支持可维护性复用诞生
  • 单一职责原则
    • 一个类制作一件事
    • 作用
      • 用于控制一个类的粒度
      • 保证一个类里面不用实现所有的功能,仅仅需要实现单一职责即可
    • 定义
      • 一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类中
    • 就一个类而言,应该仅有一个引起变化的原因
  • 开闭原则
    • 不修改源代码,只添加代码
    • 定义
      • 软件实体只能增加功能,尽量不修改功能
      • 尽可能只是拓展代码来增加新功能/修改原有功能
    • 关键
      • 抽象化
    • 具有稳定的抽象层+灵活的具体层
    • 修改配置文件,增加类,这个些操作都符合开闭原则
  • 里氏代换原则
    • 父类对象可被子类对象代替,且程序将不会产生任何错误和异常(因为子类把父类的一些方法重载了)
    • 在程序中尽可能使用基类类型来对对象进行定义
  • 依赖倒转原则
    • 编程使用配置文件,仅仅是接受对象操作对象,在外部进行创建对象注入
  • 接口隔离原则(网络上的那种API接口)
    • 一个接口尽可能做少的事情
    • 把接口都拆开来
  • 合成复用原则
    • is-a继承复用  has-a组合/聚合复用
    • 就是类似于把mysql的obj反射出来,然后再操作
  • 迪米特原则
    • 减少对象之间的交互
    • 两个对象不应该发生任何直接的相互作用
    • 通过”第三者”转发这个调用
    • 引入一个合理的”第三者”来降低现有对象之间的耦合度

作者: 7gugu

I'm a phper!

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注