代码改变世界

扩展VS2010插件-----通过UML类图,自动生成相关代码

2012-03-14 16:22  随风浪迹天涯  阅读(...)  评论(... 编辑 收藏

因为去年帮我的师父开发这个小软件,所以去年整了将近一个多月的时候,把这个基本的工程弄好了。姑且就叫做 版本1.0吧。 

其实,功能很好理解,就是当你把UML(这里需要注意的是,只能用在VS,所以 rose,那就sorry咯)图画好了之后,然后生成,它就可以自动的生成一个项目框架。

今天把这些发布到这里,希望对你们有许些帮助,我就开心+happy了哦。嘎嘎。

实现的功能如下:

1.完全格式化,和我们平常新建一个类的格式完全一样

2.无限循环新建文件夹。我现在实现的是,如果是一个包的话,那么就新建一个文件,然后就这么一直一直循环下去。这里用了一个递归函数,效率不是太高。

3.支持继承、抽象。

4.自动引用,通俗点就会自动进行using,当然这得保证在当前的UML类图中 有这个类,才能找到。

5.注释的添加。如果你在画UML图的时候,你对UML的一些图有描述,那么就会自动的添加到上面去。也就是C#中的注释。

6.有类、接口、枚举。。。

。。。

 后台代码结构:

主要用到的技术:

1.UML的扩展技术。

2.T4语言

3.C#

要是有人对这个比较感兴趣,到时候我在分享一篇文章。


使用教程:

1.下载文件,然后解压。需要\UML2Code\MainVsix\bin\Debug找到一个MainVsix.vsix的文件

猛击下载

对了这里还需要,通过后面有些园友反应,说下载了哪个MainVsix.vsix打不开,后来我找了原因,原来是没有安装一个插件:

1.http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=2680

2.http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=23025

安装这2个插件就可以了啦。

2.点击安装。

点“Install”就可以,它就会自动的安装到你的VS 2010的 扩展管理器 里面了。安装成功了 ,有提示:

3.打开扩展管理器,在扩展管理器进行查看(Extension Manager).

下面用高亮画出来的东东 就是我们扩展出来的插件吧。恭喜你,安装成功了 你即将就可以使用了。 

4.添加一个类图文件。

在解决方案右键,新建项目,然后找到建模项目。如图:

新建之后,默认名是:ModelingProject1 。接着在右键,添加 新建项

说实在话的,里面比rose的功能没那么多,不过基本的功能都能实现,可以实现大部分人的项目需求。我们新建一个类图。

。。。(新建类图过程。。。。)

OK,好了。现在我们新建好了HNSchool.classdiagram这个类图。

5.开始生成代码

我们在类图上面右键。可以看到一个

那个“Generator CS By Lanny” 就是我们自己扩展的一个子项。

点击之后,就能在当前的解决方案中自动的生成你目前的类图的相关代码。

比如 ,生成的结构:

注:每一个文件在代表你在UML中的一个包。

生成的代码格式:

源码下载