Enterprise Architect 15 使用指南

Enterprise Architect 15 使用指南

因为之前曾有过用Python编写纯面向对象代码的痛苦经历设计模式 by Python1:策略模式。所以我又想起了多年前的老伙计EA。

我们来看下多年过去了,EA是否在编写Python工程时依然好用。

下载&&安装

这里下载安装的是脚本之家的版本,页面在这里

额外提供一个百度盘:

链接:https://pan.baidu.com/s/1p2-JZwJiY_bd3Nut-muq6A
提取码:dilh
复制这段内容后打开百度网盘手机App,操作更方便哦

版本是15.0,官方最新是15.2,应该区别不大。

安装好本体后需要使用crack文件夹下的exe替换安装目录下的exe。

构建类图

打开EA,点击左上角的图标新建项目。

Enterprise Architect 15 使用指南_第1张图片

起一个项目名称,我这里就叫test2好了。

Enterprise Architect 15 使用指南_第2张图片

新建好后的页面应该和我现在的差不多,可能会有个欢迎页面,不过差不多。

Enterprise Architect 15 使用指南_第3张图片

先要在工程下新建一个包,点击Browser下的文件夹图标:

Enterprise Architect 15 使用指南_第4张图片

起一个名字后点击ok,然后会出现一个窗口:

Enterprise Architect 15 使用指南_第5张图片

我理解这个窗口是预设模板,可以快速构建一些特定的类图啥的,我们这里直接关闭这个窗口就行了。

Enterprise Architect 15 使用指南_第6张图片

现在我们的包建好了,需要在包里添加视图,我们的类图和活动图等都是创建在视图上的。点击包右边的小图标添加视图:

Enterprise Architect 15 使用指南_第7张图片

我这里构建的是类图,这样选择视图类型:

Enterprise Architect 15 使用指南_第8张图片

好了,我们的类图创建好了。Enterprise Architect 15 使用指南_第9张图片

我们现在需要做的就是添加类等类图组件,这一步我折腾了半天,硬是找不到组件工具栏,后来发现的时候相当无语。居然是在类图标签左边的小图标>>,点击一下即可展开组件工具栏。

Enterprise Architect 15 使用指南_第10张图片

通过拖拽,我们可以简单添加类

Enterprise Architect 15 使用指南_第11张图片

我们现在要加上继承关系,选择子类,点击右上角小箭头,进行拖拽到父类:

Enterprise Architect 15 使用指南_第12张图片

在弹出的菜单中选择Generalization:

Enterprise Architect 15 使用指南_第13张图片

  • Generalization在UML中准确的讲是表示泛化关系,但在类图中就是表示继承关系。
  • 更详细的UML介绍可以看这里。注意,这个是个山寨w3school网站,真身是没有UML相关教程的。

我们用同样的方法还可以把类关联到接口上,当然这时候选择关系为Realization(实现)。

Enterprise Architect 15 使用指南_第14张图片

与之类似的,我们可以给接口和抽象类Carrier加上聚合关系,此时我们可以通过TakeoffMode拖拽箭头到Carrier,然后选择Composition to whuole,即组合到整体。

Aggregation是聚合,Composition是组合,这两者很容易傻傻分不清,我在某个地方看到的例子非常好,大雁和雁群是聚合关系,翅膀和大雁是组合关系。

Enterprise Architect 15 使用指南_第15张图片

我们还可以在关系上添加数目,即1对1关系,双击关系,在弹出的窗口中选择Role,并填入1:

Enterprise Architect 15 使用指南_第16张图片

现在该给类加入属性和方法了,选定一个类,在右侧Properties窗口的小图标下拉菜单中选择Attributes

Enterprise Architect 15 使用指南_第17张图片

视图下方会打开一个管理属性的窗口,我们可以在这里快速添加属性:

Enterprise Architect 15 使用指南_第18张图片

可以用同样的方式添加方法:

Enterprise Architect 15 使用指南_第19张图片

经过一番设置后,我们可以完成一个简单的类图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2KqRiNF1-1617263331076)(https://i.loli.net/2021/04/01/EztO1JnLajlmCSI.png)]

最后我们再修改一下类的层级:

Enterprise Architect 15 使用指南_第20张图片

我们现在有了类图,可以尝试导出代码了。

导出代码

先修改相关设置:

Enterprise Architect 15 使用指南_第21张图片

我们把项目默认语言改为自己常用的语言:

Enterprise Architect 15 使用指南_第22张图片

还需要修改我们项目的源码类型,在包上右键选择properties>properties:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1hwp9kG5-1617263331086)(https://i.loli.net/2021/04/01/rTZ6sdcqMwuVtN2.png)]

在打开的窗口右侧选择源码语言为你的目标语言:

Enterprise Architect 15 使用指南_第23张图片

导出源码的功能我同样找了好半天,以前老版本是直接在包上右键菜单就有,新版难找的一B:

Enterprise Architect 15 使用指南_第24张图片

在打开的窗口中选择如下设置后点击生成:

Enterprise Architect 15 使用指南_第25张图片

大功告成。可以用VSCode打开项目看一下:

Enterprise Architect 15 使用指南_第26张图片

这里要特别说明一下,如果你遇到和我一样,不管怎么设置,导出代码都是原本默认的Java代码的话,那你要检查一下项目所有类的property中的language:

Enterprise Architect 15 使用指南_第27张图片

这里有个大坑,如果是在类图创建好后再改项目语言,只有你改的那个包的语言会变,包下面的子包和类以及视图的语言都是不会变的,你需要手动一个个把那些都改成Python,这样你导出的程序才是Python,否则不管你怎么弄都是Java。这个设定无比坑爹!

这个问题我原本还以为是15.0版本的bug,后来找了最新的15.2安装,依然有,最后我还去下了另外一个建模工具VP,最终还是偶然间发现问题原来出在设置上。

所以使用EA的时候最好一开始就设定好语言。

你可能感兴趣的:(开发工具,ea,建模工具,python)