五、标签
标签就是用于Goto跳转的代码标识,由于Goto并不推荐使用,所以标签的使用也比较苛刻。标签必须全部大写,中间的空格用下划线_代替,而且应该以_开头,比如:
_A_LABEL_EXAMPLE:
如此定义标签是为了与其他代码元素充分区别。
六、名字空间
通常,一个工程使用一个名字空间,通常不需要用Namespace语句,而是在工程选项的“Root Namespace”中指定,使用根名字空间可以使代码更加整齐,容易修改,这一点是VB十足的优点。名字空间的语法是:
公司名.产品名[.组件名的复数]
如:
Namespace COM.NET
Namespace COM.File.IO.Files
随便起一个名字空间的名字绝对不是一个好主意,一定要遵守上述规定。
七、格式化
良好的格式化代码对我们的浏览与维护有相当的好处。
1、 块
.NET提供了#Region...#End Region块控制。我们应该根据代码所实现的功能分类并以块组织起来。
2、 缩进
每个层次直接都应该以Tab进行缩进,而不是Space(空格键)。
3、 流
每个方法、函数、属性、事件应该有且只有一个入口和一个出口。如果遇见多层嵌套而需要直接跳出的时候,请使用局部Boolean或者Integer变量来标示用以多层跳出。
譬如:
Private Function TestForReturn () As Boolean
Dim o_blnRet As Boolean=False
Dim i As Integer, l As Integer
For i=1 To 100
For l=1 To 10
If (x) Then
o_blnRet=True
Exit For
Else
End If
Next
If o_blnRet Then
Exit For
Else
End If
Next[page] Return o_blnRet ''这里是唯一出口
End Function
八、注释
1、 准则
注释的规则繁多,基本地:正常的注释以''*开头,单独的''只用来注释暂时不用的代码
''* 这是普通的注释
''* 这段代码在调试正确后加入
''If UseHighSpeed(i) = True Then ....
这样能够方便的采用代码注释工具控制代码的使用。
2、类(包括WebForm、WinForm等)、模块、组件、控件
每个类、模块、组件、控件最开始的地方必须输入该对象的信息,样例内容与格式如下:
''******************************************************************
''*
''* 对象名称:OnlineUpdateService
''* 命名空间: http://www.domain.cn/onlineupdate/OnlineUpdateService.asmx
''* 作 者:chs(Wilson Chan)
''* 功能说明:在线更新Web Services
''* 创建日期:2003/07/27
''* 修改日期:2003/09/5 16:59
''* 修改记录:
''* □2003/07/31
''* 1.AddUpdateUserCategory/DeleteUserCategory
''* 2.AddUpdateUserState/DeleteUserState
''* 3.AddUpdateServerUpdate/DeleteServerUpdate
''* 4.AddUpdateClientUpdate/DeleteClientUpdate
''* 5.AddUpdateClientUpdateLog/DeleteClientUpdateLog
[page]''* 6.GetServerUpdates/GetClientUpdates/GetClientUpdateLogs
''*
''******************************************************************
一般地,我们要求内容有:对象名称、命名空间、作者、功能说明、创建日期、修改日期、修改记录,特别地,我们要求修改记录应该详细叙述最近的修改。
3、方法、函数、事件与属性
每个方法、函数、事件与属性最开始的地方必须输入该对象的信息,样例内容与格式如下:
''*名称:OnlineUpdateFileAddUpdate
''*功能:添加更改更新信息
''*作者:chs
''*创建:2003/7/31
''*修改:2003/7/31
''*参数:intID:唯一标示
''* strTitle:标题
''* strVersion:版本
''* strVerifier:标示
''* strDescription:描述
''* strRelatedFile:相关文件
''* strUpdatePackage:下载包
''* intState:状态
''* dteCreatedDateTime:创建日期
''*返回:成功,True,反之,False
''*说明:[page]
一般地,我们要求内容有:名称、功能、作者、说明、创建、修改、参数与返回。
八、完整性
1、If...Else...End If
2、Select Case...Case Else...End Select
九、安全性
1、Try...Catch...Finally...End Try
十、优化
1、With
2、For...Next
3、Do Until...Loop
4、代码重构
十一、其它
1、 快捷键
2、