面向对象分析与设计
上QQ阅读APP看书,第一时间看更新

2.7.1 对象约束语言的特点

OCL是一种简单、规范的描述性语言,它具有如下主要特点。

1.规范性

OCL是一种既简单又规范的语言。这使得OCL既易于理解和使用,又能够更容易地为UML模型编写出含义明确且不容易引起误解的规则和约束。规范性是指这种语言具有严格的语法,同时也具有严格的使用规则。使用这种语言时,模型工具通常提供了严格的语法检查机制。

2.描述性

OCL是一种说明性的描述语言,对模型描述的结构或功能没有任何副作用。使用OCL语句不会实质性地改变模型中的任何内容(如对象属性和方法)。

3.非过程性

通常,人们并不使用OCL表达式描述模型中的过程(或活动)。例如,违反了某个特定规则时应执行的动作,这样的活动仍然使用UML模型元素(如活动图中的动作等)描述。

4.强类型

OCL是一种严格的强类型的语言,所有运算符都要求其操作数必须符合指定的类型要求,同时每个操作也都只能适用于特定的操作数类型。这使得使用这种语言可以严格、无二义性地描述建立的UML模型。这些特性使得这种语言既便于使用,又有助于建立概念清晰、结构严谨、表达明确、无二义性的软件模型。尽管UML不强制使用OCL,但理解和掌握这种语言的使用方法很有意义。