Object-Oriented Analysis and Design Using UML 翻译与学习 (九)

 Modeling Object State Using State Machine Diagrams

使用状态机图给对象状态建模

 

目标

完成这个模块(章节),你可以

1、给对象状态建模

2、UML状态机图的必要元素

 

介绍对象状态

State is “1a: mode or condition of being” (Webster)

状态是“1a:模型或物件的状态”(Webster)

 

有两种方式去思考对象的状态:

1、对象的状态是为对象(使用)的明确的属性的值的集合

2、一个对象的状态描述对象对于外界刺激的行为(反应)

这个模型(章节)以后一种方式思考(认同)。

 

定义状态机图的基本元素

 

状态转换

一个状态转换代表状态在运行时的改变

 

状态节点的内部结构

状态节点代表运行时一个单独对象的状态

1、“入口”事件说明进入状态的行为

2、“离开”事件说明离开状态的行为

3、“做”事件说明正在运行时的行为

4、你也可以说明带有相应行为特定的事件

 

完成HVAC(加热,通风空调系统)状态机图

 

为一个复杂的对象创建状态机

1、为对象画一个初始状态和最终状态

2、画出对象的稳定状态

3、说明对象生命周期内的部分稳定状态的次序

4、说明触发对象的状态的转换的事件

5、说明状态的行为

 

第一步--开始画出初始状态和结束状态

 

第二步--决定稳定对象状态

第三步--说明状态的部分次序

第四步--说明转换事件和动作

第五步--说明状态的动作

后触发器事件

使用触发器事件,显示一段时间后出现的事件。

为了十分钟后引发转换,在转换上画上after(10min)以说明事件。

这个事件经常用作超时设定。

 

自转换

自转换是具有相同起始状态和最终状态的状态转换。

//进出栈示例:    //bourne_w@sina.com

交汇点

在UML中,交汇点可以被用作简化图,通过把许多转换打散成片段,从而简化

触发事件,守护,动作的重复性。

下面这个例子展示了状态的变化的次序,事件的次序,守护和动作的值。

交互例子

选择点

 

在UML中,选择点可以被用作简化图,通过把许多转换打散成片段,从而简化

触发事件,守护,动作的重复性。选择点也允许守护的动态值,在前一个转换

片段的行为被执行后。

下面这个例子展示了状态的变化的次序,事件的次序,守护和动作的值。

选择点例子

 

 

 

总结

1、一个对象也许有定义这个对象的特有行为状态

2、状态机图为给对象状态装换建模提供了一个机制

 

//2016年11月6日16:15:22 一不小心就搞完了,虽然比较少,但也很重要
//联系我,邮箱:bourne_w@sina.com

交个朋友吧

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值