预订演示
前页 后页

代码和转换模板

代码模板和变换 (模型变换) 模板定义了系统应如何以Enterprise Architect支持的一种或其他编程语言生成或转换代码。每种语言都有广泛的基础模板,每个模板都定义了特定代码结构的生成方式。您可以按原样使用这些基本模板,也可以自定义模板并将其添加到模板中,以更好地支持您使用标准语言或您可能为系统定义的其他语言。您可以通过代码模板编辑器或变换编辑器来审阅、更新和创建模板。

基本模板在两个编辑器中列出的顺序与对象的层次顺序及其要处理的部分有关。调用是从某些基本模板向其他模板发出的,您可以向基本模板和您自己的自定义模板添加更多调用。默认情况下,文件模板是通过模板生成代码的起点;一个文件由可以包含属性和操作的类组成。

访问

功能区

开发 >源代码 > 选项 > 编辑代码模板

设计>包>变换>变换模板

键盘快捷键

Ctrl+Shift+P(代码生成模板)

Ctrl+Alt+H(MDA变换模板)

模板的应用

行动

细节

也见

调用模板

在任何模板中,您都可以使用 %TemplateName% 调用其他模板。封闭的百分比 (%) 符号表示宏。

您可以将它用于对 ClassBody模板%ClassBody% 的一次调用,如下所示:

% list = "TemplateName" @separator= "\n" @indent= " " %

%list 宏对当前模板范围内的所有对象执行迭代传递,并为每个对象调用 TemplateName:

% list = "ClassBody" @separator= "\n" @indent= " " %

在生成或转换之后,每个宏被替换以产生生成的输出;对于像 C++ 这样的语言,处理这个模板的结果可能是:

/**

* 这是一个使用代码模板生成的示例类注记

* @author Sparx Systems

*/

类ClassA:公共ClassB

{

...

}

列表宏

代码模板的执行

每个模板可能只作用于特定的元素类型;例如,ClassNotes模板只作用于UML类和接口元素。

当前生成代码的元素被称为在范围内;如果范围内的元素是构造型的,则系统搜索已为该构造型定义的模板。如果找到专门的模板,则执行;否则使用基本模板的默认实现。

模板按顺序逐行处理,用模型中的基础文本值替换每个宏。

在项目之间转移模板

如果您编辑基本代码生成或变换模板,或创建自定义模板,您可以将它们从一个项目复制到另一个项目作为参考。

导出代码生成和变换模板 导入代码生成和变换模板

了解更多