博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

水龙卷

我是一个对自己进行debug的程序,所以行动迟缓些,不要见怪
  waterspout.cublog.cn

关于作者
姓名:何云龙
职业:Linux移动终端平台开发
介绍:走的更远些
|| << >> ||
我的分类


动作语义规范中的一些概念
 
UML中最关键的动态建模部分,状态图,活动图和顺序图,要能够精准描述并支持代码生成的话,需要使用动作语言(Action Language)。但是UML2.0没有定义具体的语法,而知识提供了参考的语义规范,从下面的地址可以下载到这个语义规范的pdf版本(总共754页)。

http://www.omg.org/cgi-bin/doc?ptc/02-01-09

动作语言实质上是对传统过程式语言进行模式抽取,从OO的角度进行操作分类,并以UML的语法来进行具体表示,这也是动作语言成为可执行的UML的关键部分
 
动作语言包括包括以下操作:
 
1. 创建或删除对象
2. 通过引用访问对象
3. 创建或删除对象引用
4. 触发一个操作
5. 返回
6. 读取或设置属性
7. 计算表达式的值
8. 读取或修改变量的值
 
为了进行动作流程控制,还需要引入条件分支和条件循环操作。这些操作和流程,对于描述一般的动态建模已经足够了。在UML的动作语义规范中,每个操作还需要定义输入输出参数。
 
UML的动作语义规范规定的其它动作还有:
ReClassifyAction:
     应该是类似于类型转换的操作。
CollectionAction:
     类似于C++和Java 5.0支持的unbox/box和for each操作。严格来讲这并不是一种操作,只是一种简便的表示方法
Messaging Action:
     这个动作增强对象的能力,使其能够收发消息,这里的消息可以是同步的,也可以是异步的。
Jump Action:
     类似于传统过程式编程中的continue, break等
 
 
其他概念:
Pins: Action的Input和Output
DataFlow: 当一个Action的Output作为另一个Action的Input时,表示DataFlow产生了
ControlFlow: 指定了Action执行的先后次序
PrimitiveAction: 原子动作,不可再分解,一般来说指那些数学运算,内存读写等最基本的操作。
Procedure:一组Action集合。
 
 

发表于: 2007-09-12,修改于: 2007-09-13 01:42,已浏览385次,有评论0条 推荐 投诉


网友评论
 发表评论