在做vb.net机房收费系统中使用到了EA(Enterprise Architect),它提供了建立uml模型的工具。而且具有强大的文档生成能力,并支持源代码生成和反向工程,具有强大的数据库建模功能,它具有需求、分析、设计模式到实施和部署的全程跟踪能力。
现在通过画一个实体类的类图并生成这个类图的代码的实际例子来进一步具体的说明。
1.画类图
首先,新建一个类图,并在它的属性中输入类的名称,要生成什么样的语言,并修改在它的属性的备注的地方填写具体的对类的具体描述其中类的方法、属性、变量的描述,如图:
下一步,编写类的具体的方法、变量、属性,右击类选择菜单中的变量,来编写变量,在变量编写页面进行图中步骤的操作(注:选择保存后,便可勾选属性。),如图:
下一步,勾选属性后会出现,“属性特性实现”界面,如图,修改好属性后进行确定。
依次按照上述的方法输入所有需要输入的变量和属性,输入完成后如下图所示:
2.生成类的代码
类图已经画好,下一步只要右键点击类,选择生成代码(或选择类后直接按F11,便可生成代码)如图
进入生成代码的界面,选择路径,点击生成便能生成代码,如图
生成的代码如下,其中对于类的备注,变量、属性的备注,都变成了代码中对于类和变量、属性的的注释。我们再在项目中添加生成的这个类就可以了。
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''
'' UserInfoModel.vb
'' Implementation of the Class UserInfoModel
'' Generated by Enterprise Architect
'' Created on: 20-2月-2014 21:25:49
'' Original author: yiqing
''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Option Explicit On
Option Strict On
''' <summary>
''' 系统用户的实体类
''' 包含4个变量:mUserID(用户名)、mPWD(密码)、mUserName(用户姓名)、mLevel(用户等级)
''' 包含4个属性:userID(用户名)、PWD(密码)、userName(用户姓名)、Level(用户等级)
''' </summary>
Public Class UserInfoModel
''' <summary>
''' 系统用户的等级
''' </summary>
Private mLevel As String
''' <summary>
''' 系统用户的密码
''' </summary>
Private mPWD As String
''' <summary>
''' 系统用户的用户名
''' </summary>
Private mUserID As String
''' <summary>
''' 系统用户的姓名
''' </summary>
Private mUserName As String
''' <summary>
''' 系统用户的等级
''' </summary>
Public Property Level() As String
Get
Return mLevel
End Get
Set(ByVal Value as String)
mLevel = Value
End Set
End Property
''' <summary>
''' 系统用户的密码
''' </summary>
Public Property PWD() As String
Get
Return mPWD
End Get
Set(ByVal Value as String)
mPWD = Value
End Set
End Property
''' <summary>
''' 系统用户的用户名
''' </summary>
Public Property UserID() As String
Get
Return mUserID
End Get
Set(ByVal Value as String)
mUserID = Value
End Set
End Property
''' <summary>
''' 系统用户的姓名
''' </summary>
Public Property UserName() As String
Get
Return mUserName
End Get
Set(ByVal Value as String)
mUserName = Value
End Set
End Property
End Class ' UserInfoModel
3.写到最后
米老师说过人和动物的最大区别在于,人善于使用工具。EA的强大也不仅仅是画个类图,快速生成个类的代码那么简单,它更是我们站在一个全局的角度去开发、管理项目的一个工具。而我也不能仅仅是学会使用这个工具,更要去学会通过使用这个工具,来让自己学会怎样去管理好手中的的项目或者是试着让自己有管理团队的的思想。