聊聊.net程序设计——浅谈使用VS2010建模拓展(上)
来源:互联网 发布:大数据发展历程 编辑:程序博客网 时间:2024/06/01 12:28
因为在平时工作中一直用Rational Rose或者EA等UML建模工具来实现UML图的设计绘制,当然它们也支持正向及逆向工程。但一直感觉使用起来不能和Visual Studio很好的结合起来。直到今天我在微软官网发现了一个拓展即:Visual Studio 2010的可视化和建模工具包。
自己小试了一下发现这是个非常强大,使用也很便捷的拓展,下面具体说明一下本人是怎么使用该拓展的。
首先,需要安装VS2010 Ultimate(下载)。
然后,下载(Visual Studio 2010的可视化和建模工具包)。
Visual Studio 2010的可视化和建模工具包下载完成后是2个.vsix拓展文件,一个是建模工具包,一个是运行时,如下图:
双击直接安装即可,安装后开启VS2010,在新建项目对话框中会多了一项“建模项目”如下图:
其中包括:
Layer Designer Command Extension——即向层关系图添加命令和特定动作,具体请参见:向层关系图添加命令和特点动作
Layer Designer Gesture Extension——即在图层图表中加入命令和轨迹,具体请参见:在图层图表中加入命令和轨迹
Layer Designer Validation Extension——即向层关系图添加自定义体系结构验证,具体请参见:向层关系图添加自定义体系结构验证
建模项目——今天我们主要讨论该模板。
选中“建模项目”模板,设置名称为“TestModelingProject”及设置存储路径,点击【确定】按钮。
这样我们就创建了一个建模项目,在VS2010中的解决方案资源管理器中会看到如下图:
选中TestModelingProject建模项目,然后点击IDE菜单栏中的【体系结构】菜单项然后选择【新建关系图】
弹出关系图选择页面
目前共有如下几种关系图类别,我们以UML类图为例,来建立我们自己的程序UML。
设置名称及添加到建模项目后点击【确定】按钮。会自动在IDE中生成类关系图。
点击IDE左侧的“工具箱”DockPanel,在工具箱中会出现类图中常用的图形,如
我们先建立一个Demo,即向画布中拖拽一个接口及两个类,分别命名为:IDemo,Demo1,Demo2,在接口中有一个方法约定即:int GetMaxValue(List<Int> list),两个类分别实现该接口,如
这里介绍一下接口或类型图中该如何添加“特性”及“操作”,如添加一个操作即一个方法,首先选中“操作”行右键点击【添加】-》【操作】
然后再属性DockPanel中设置相关参数及返回值类型等
设置参数点击“Parameters”属性中右边的浏览按钮“”,弹出操作参数集合编辑器窗口,对参数进行设置
这样我们的方法就建立成功了,“特性”的创建和方法类图,这里就不再一一介绍,这样我们接口和类就创建成功了。
下面我们来将建好的UML类图导出来,如何操作呢?如下:
Ctrl+A选中接口和类图,右键点击【GenerateCode】
这时会提示选择类模板对话框
点击【确定】按钮,开始创建工程
最终我们的UML类图被正向工程导出为如下图的类库
最终会输出一些日志信息提供查看
这样我们的一个正向工程就完成了,在下章中我们会讨论逆向工程的相关细节。
由于本人也是刚刚接触对于具体高级应用还不是很了解,所以希望大家一起来讨论,对其中有那些不足还望及时提出。
- 聊聊.net程序设计——浅谈使用VS2010建模拓展(上)
- 聊聊.net程序设计——浅谈使用VS2010建模拓展(上)
- 聊聊.net程序设计——浅谈使用VS2010建模拓展(下)
- 聊聊.net程序设计——浅谈使用VS2010建模拓展(续)
- 聊聊.net程序设计——浅谈使用VS2010建模拓展(下)
- 聊聊.net程序设计——浅谈MVC 架构模式(上)
- 聊聊.net 程序设计——命名规范(上)
- 聊聊.net 程序设计——命名规范(下)
- 浅谈—拓展欧几里德
- 浅谈vs2010使用
- 聊聊UNDO_RETENTION作用(上)
- 聊聊UNDO_RETENTION作用(上)
- SP2010开发和VS2010专家"食谱"--第四章节—列表定义和内容类型(2)--拓展现有内容类型
- Uml使用—建模管理
- 【VB.NET程序设计】——什么是.NET程序设计?
- 正确使用UML建模——领域建模与实现建模的区别
- 聊聊单元测试(一)——EasyMock
- 聊聊单元测试(二)——MockEJB
- linux rm
- linux 查看文件内容的命令
- 非常简洁高效的JS右键菜单
- 能否使用sort()函数按二维数组的x,y数轴进行排序?
- 卸载ORACLL
- 聊聊.net程序设计——浅谈使用VS2010建模拓展(上)
- Linux性能优化
- 看亚马逊如何运用用户行为数据
- 聊聊.net 程序设计——命名规范(上)
- Oracle里的序列sequence
- java中transient的理解
- SQL
- vb.net引入类库后显示指定不明确错误
- oracle06_手动建库