用Enterprise Architect 14设计类结构
简介:Enterprise Architect是一套优秀的UML设计工具,但网上的介绍多是8.0。前面介绍了UML的概念,还有常用的设计模式。如果要想动手操作,还需要一个软件,当然Visio也可以画出UML图,但是今天我们聊聊更专业的工具EA14。
1、EA工具
画一个图1这样的图怎么实现呢?答案当然是找一个靠谱的专业软件,那么EA这个工具挺专业的。
图1 Builder模式的UML类图安装EA后,打开软件工作区布局如图2所示,本文用的是14.0版本。
图2 EA软件的主界面2、正向工程
先设计类结构,之间的继承关系,然后生成代码框架,然后由程序员实现每个类方法的具体内容,这叫正向工程。
图2中EA最左边管理的是model,在里面可以插入各种diagram(比如类图),并设计具体的类结构,toolbox里面可以拖动对象到中间设计区域,再连接每个类设置关系即可。code下面的generate菜单下,可以生成各种语言的代码框架。
3、逆向工程
从已有代码中,还原类之间的继承关系,然后用UML图的方式表现出来,这叫逆向工程。
也是在code下面,可以导入多种语言的源码文件,然后model视图区可以自动产生代码里面的类定义和接口信息。
4、GoF设计模式
设计模式(Design Pattern)是前辈们对代码开发经验的总结,是解决特定问题的一系列套路。它不是语法规定,而是一套用来提高代码可复用性、可维护性、可读性、稳健性以及安全性的解决方案。
1995 年,GoF(Gang of Four,四人组/四人帮)合作出版了《设计模式:可复用面向对象软件的基础》一书,共收录了 23 种设计模式,从此树立了软件设计模式领域的里程碑,人称GoF设计模式。
这 23 种设计模式的本质是面向对象设计原则的实际运用,是对类的封装性、继承性和多态性,以及类的关联关系和组合关系的充分理解。
在EA里面,也支持GoF的预定义模式,方法是在Model视图区域,右键add a model using Wizard(Ctrl+Shift+M),选择图3所示的菜单项。
之后就可以看到图2左边自动生成的GoF模板了。
图3 预设的GoF设计模式小结:总之,各种工具软件和设计模式只是一个引导,在实际的软件开发中,必须根据具体的需求来选择:对于简单的程序,可能写一个简单的算法要比引入某种设计模式更加容易;但是对于大型项目开发或者框架设计,用设计模式来组织代码显然更好。