面向对象设计

需求开发-需求分析-OOA-相关概念

  • 对象(实体类、边界类、控制类)
  • 抽象
  • 封装
  • 继承与泛化
  • 多态
  • 接口
  • 消息
  • 组件
  • 模式和复用

面向对象设计-设计原则

  • 单一职责原则:设计目的单一的类
  • 开放-封闭原则:对拓展开放,对修改封闭
  • 里氏换元:子类可以替换父类
  • 依赖倒置原则:要依赖抽象,而不是具体实现;针对接口编程,不要针对实现编程
  • 接口隔离原则:使用多个专门的接口比使用单一的总接口要好
  • 组合重用原则:要尽量使用组合,而不是继承关系达到重用目的
  • 迪米特原则(最少知识法则):一个对象应当对其他对象有尽可能少的了解

需求开发-需求分析-OOA-UML

结构(静态图):

  • 类图
  • 对象图
  • 包图
  • 组合结构图
  • 构件图
  • 部署图
  • 制品图

行为(动态图):

  • 用例图(用例)
  • 顺序图、序列图
  • 通信图、协作图
  • 定时图
  • 状态图
  • 活动图
  • 交互概览图

面向对象设计-设计模式的概念

架构模式:软件设计中的高层决策,例如C/S结构就属于架构模式,架构模式反映了开发软件系统过程中所做的基本设计决策

设计模式:主要关注软件系统的设计,与具体的实现语言无关

惯用法:是最低层的模式,语言相关

面向对象设计-设计模式的分类

  • 创建型模式

    • 工厂方法
    • 抽象工厂
    • 原型模式
    • 单例模式
    • 构建器模式
  • 结构性模式

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

    • 职责链模式

    • 命令模式

    • 解释器模式

    • 迭代器模式

    • 中介者模式

    • 备忘录模式

    • 观察者模式

    • 状态模式

    • 策略模式

    • 模板方法模式

    • 访问者模式

面向对象设计-创建型模式

Snipaste_2022-10-11_15-26-27.png

面向对象设计-结构型模式

Snipaste_2022-10-11_15-30-11.png

面向对象设计-行为型模式

Snipaste_2022-10-11_15-39-32.png

Snipaste_2022-10-11_15-44-54.png