UML 简单易懂 教程

startuml

软件地址:
https://pan.baidu.com/s/1d_b-2taoNuG-Fj3gP9RmYw

OOAD

  • ooad:面向对象的分析与设计
  • ooa:分析阶段
  • ood:设计阶段

OOP主要特征

  • 封装(encapsulation)

  • 抽象(abstract)

  • 继承(inheritance)

  • 多态(polymorphism)

  • 关联 (association)

    例如:人使用计算机,人和计算机的关系。关联关系较弱。

  • 聚合(aggregation)

    例如:一个对象作为另一个对象的属性存在,轮胎和汽车的关系。关联较强

  • 组合(composition)

    例如:一个对象包含另一对象时,外部对象负责管理内部对象的生命周期的情况。关联关系最强。内部对象的创建由外部对象自己控制。外部对象不存在时,内部对象也不能存在。如电视机与显示器。

-内聚与耦合(cohesion&coupling)

域模型

域模型是面向对象的。在面向对象术语中域模型也可称为设计模型。域模型由以下内容组成:

  • 具有状态和行为的域对象

  • 域对象之间的关系

    关联、依赖、聚集、一般化(泛化)。

关联关系

这里写图片描述

依赖关系

在BusinessService类中访问Customer类的方法,并且构造Customer类的实例,也就是说一个类要需要另一个来完成它的相关任务,叫依赖关系。

这里写图片描述

聚集关系

指的是整体与部分之间的关系,如:一个两只手

这里写图片描述

一般化关系

指类之间的继承关系

这里写图片描述

UML(Unified Modeling Language),统一建模语言

Assocition/DirectedAssociation:关联关系。Aggregation:聚合。Composition:组合。Generalization:一般化。Dependency:依赖关系。Realization:实现。

这里写图片描述

静态建模

创建并记录一个系统的静态特征、反应一个软件系统基础、固定的框架结构、创建相关问题域主要元素的视图
包括:用例图、类图、对象图、组件图、部署图。

用例图

展示系统的核心功能及与其交互的用户,用户被称之为“活动者”(Actor),用例使用椭圆表示

这里写图片描述
解释:管理员可以进行增删改查,来宾用户可以进行查询,管理员和来宾被称之为活动者,而增删改查则是用例。

类图

表现类的特征,类图描述了多个类,接口的特征,以及对象之间的协作与交互。由一个或多个矩形区域构成,内容包括:类型(类名),属性(可选),操作(可选)。

这里写图片描述

对象图

表现对象的特征,对象图展现了多个对象的特征及对象之间的交互。

这里写图片描述

组件图

例如:服务层和数据层之间的依赖关心等
这里写图片描述

部署图

这里写图片描述

动态建模

用于展示系统的行为,包括时序图、协作图、状态图、活动图。

时序图(Sequence Diagram)

捕捉一段时间范围内多个对象之间的交互信息,强调消息交互的时间顺序

这里写图片描述

协作图(Collaboration Diagram)

表现一定范围内对象之间协作的信息,强调参与信息交流的对象之间的组织结构

这里写图片描述

状态图(State chart Diagram)

强调一个对象在不同事件触发时,内部状态的转变过程

这里写图片描述

活动图(Activity Diagram)

描述活动的流程

这里写图片描述

UML元素

  • 包(package)
  • UML的扩展机制
    注释(comments)
    构造型(stereotypes)
    标记值(tagged values)
    限制(constraints)

通过UML生成设计模式代码

步骤一:
这里写图片描述
步骤二:
这里写图片描述
步骤三:
选择观察者模式
这里写图片描述
步骤四:
生成的UML图:
这里写图片描述

步骤五:
生成代码
这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

备注:

观察者模式的组成:

具体主题角色:在具体主题内部状态改变时,给所有登记过的观察者发出通知。具体主题角色通常用一个子类实现。
具体观察者角色:改角色而实现抽象观察者角色所要求的更新接口,以便使本身的状态与主题的状态相协调。如果需要,具体观察者角色可以保存一个指向具体主题角色的引用。通常用一个子类实现。

猜你喜欢

转载自blog.csdn.net/qq_18377515/article/details/80716767