UML建模语言、设计原则、设计模式( 十 )


UML建模语言、设计原则、设计模式

文章插图
注意:
  • 上图中“触发事件”和“监护条件”要同时生效的 , 即:只有“触发事件”满足“监护条件” , 才能执行“动作” , 从而让第一个状态转移为第二个状态
    • “监护条件”写法就是[监护条件] , []不能丢
  • 上图中整个“带箭头的三角的实线(单纯地这根线)”就是“转移” , 或者称之为:行为状态也行
  • 上图中整个“带箭头的三角的实线+上面的触发事件[监护条件]/动作”就是事件 , 其中:触发事件[监护条件]/动作 三者少哪一个都行 , 甚至全没有也行
1.2.5.3、状态图中的状态注:初态和终态都不是真正的状态 , 而是:伪状态
名字说明图示初态一个状态图有且只有一个初态黑色实心
UML建模语言、设计原则、设计模式

文章插图
终态一个状态图中可以有一个或多个终态 , 也可以没有终态一对同心圆(内圆为实心圆)
UML建模语言、设计原则、设计模式

文章插图
中间态用圆角矩形表示 , 可以用一条水平横线把它分成上、下两部分 。(上面部分为状态的名称[必有];下面部分是活动表[可选])有些软件是分成了三部分:上面部分为状态的名称(必有);中间部分为状态变量的名字和值(可选);下面部分是活动表(可选)
UML建模语言、设计原则、设计模式

文章插图
子状态就是状态中套状态
UML建模语言、设计原则、设计模式

文章插图
历史状态就是一个对象曾经已经发生过的状态的记录 , 类似历史日志作用:用来恢复状态的 。如:断电了 , 导致系统整个状态结束了 , 恢复电之后想要回到断电时的状态就可以用可以多层嵌套 , 就是一个套一个(有可能要恢复的状态在很多层里面)
UML建模语言、设计原则、设计模式

文章插图
举例:
UML建模语言、设计原则、设计模式

文章插图
对于上面表格的中间态中说的活动表的说明:
  • 活动表又名转换域
  • 表达式语法为:事件名(参数表)/动作表达式 , 其中:参数表也可以没有 , 如下:

    • UML建模语言、设计原则、设计模式

      文章插图
  • 在活动表中经常使用的3种标准事件
    • do 上图已经见过了 , 指的是:在该状态下的动作
    • entry 进入该状态的动作
    • exit 退出该状态的动作
1.2.6、组件图 / 构件图
定义:用来描述一个系统 / 功能的物理构件( 组件与组件之间的关系 ) 。包括文件 , 可执行文件 , 库等 。换言之:构成系统某一特定方面的实现结构组件图 = 构件 / 组件(Component)+接口(Interface)+关系(Relationship)+端口(Port)+连接器(Connector)
1.2.6.1、组件图的组成1.2.6.1.1、组件
定义:是一个封装好的物理实现单元 , 隐藏内部的实现 , 对外提供了一组接口具有自己的身份标示和定义明确的接口 。由于它对接口的实现过程与外部元素独立 , 所以组件具有可替换性

经验总结扩展阅读