前页 | 后页 |
基础模板
代码模板框架由许多基本模板组成。每个基本模板将UML的特定方面转换为面向对象语言的相应部分。
基本模板形成一个层次结构,在不同的编程语言中略有不同。在与诸如 C# 或Java (没有头文件)等语言相关的典型模板层次结构中,模板可以建模为类,但通常只是纯文本。对于具有单独实现模板的 C++ 和 Delphi 等语言,这种层次结构会稍微复杂一些。
每个基本模板都必须专门用于代码工程;特别是,每个模板都专门用于支持的语言(或“产品”)。例如,有一个为 C++ 定义的 ClassBody模板,一个为 C# 定义的,另一个为Java定义的,以此类推;通过专门化模板,您可以定制为相应的UML实体生成的代码。
一旦基础模板专门用于给定语言,它们就可以进一步专门基于:
- A类的刻板印象,或
- 特征A刻板印象(特征可以是操作或属性)
CTF 中使用的基本模板
模板 |
描述 |
---|---|
属性 |
从UML属性生成成员变量A顶级模板。 |
属性声明 |
由 Attribute模板用于生成成员变量声明。 |
属性注记 |
由 Attribute模板用来生成成员变量注记。 |
类 |
用于从UML类生成类A顶级模板。 |
类基地 |
由类模板用于在派生类的继承列表中生成基类名称,其中基类在模型中不存在。 |
类体 |
由类模板用来生成类的主体。 |
类声明 |
由类模板用来生成类的声明。 |
类接口 |
类模板用于在派生类的继承列表中生成接口名称,该接口在模型中不存在。 |
类注记 |
由类模板用来生成类注记。 |
文件 |
用于生成源文件A顶级模板。 对于 C++ 等语言,这对应于头文件。 |
导入部分 |
在文件模板中用于生成外部依赖项。 |
链接属性 |
用于生成从UML关联派生的属性A顶级模板。 |
关联属性注记 |
被链接属性模板用来生成属性注记。 |
链接属性声明 |
由链接属性模板用于生成属性声明。 |
链接类 |
由类模板用于在派生类的继承列表中为模型中的类元素生成一个基类名称,该类元素是当前类的父类。 |
链接类接口 |
由类模板用于在派生类的继承列表中生成接口名称,用于模型中作为当前类父级的接口元素。 |
命名空间 |
用于从UML包生成名称空间A顶级模板(尽管并非所有语言都有名称空间,但此模板可用于生成等效结构,例如Java中的包)。 |
命名空间体 |
由命名空间模板用来生成命名空间的主体。 |
命名空间宣言 |
由命名空间模板用来生成命名空间声明。 |
手术 |
用于从UML类的操作生成操作A顶级模板。 |
操作体 |
由模板用于生成UML操作的主体。 |
运营声明 |
操作模板用于生成操作声明。 |
操作注记 |
由操作模板用于生成操作文档。 |
参数 |
由操作声明模板用于生成参数。 |
模板用于为具有单独接口和实现部分的语言生成代码
模板 |
描述 |
---|---|
类Impl |
用于生成类的实现A顶级模板。 |
类体Impl |
由类Impl模板用来生成类成员的实现。 |
文件实现 |
用于生成实现文件A顶级模板。 |
文件注记Impl |
由文件Impl模板用于在源文件中生成注记。 |
导入Section Impl |
由文件Impl模板用于生成外部依赖项。 |
操作实现 |
用于从UML类的操作生成操作A顶级模板。 |
操作体Impl |
由模板用于生成UML操作的主体。 |
操作声明实现 |
操作模板用于生成操作声明。 |
操作注记Impl |
由操作模板用于生成操作文档。 |