望麓自卑—湖南大学最具潜力的校园传媒

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 937|回复: 0

8.3 VB编程规范

[复制链接]
发表于 2005-7-11 14:56:22 | 显示全部楼层 |阅读模式
8.3 VB编程规范

8.31 基本要求

程序结构清析,简单易懂,单个函数的程序行数不能太长。
1.2 打算干什么,要简单,直接了当,代码精简,避免垃圾程序。
1.3 尽量使用标准库函数和公共函数。
1.4 不要随意定义全局变量,尽量使用局部变量。
1.5 使用括号以避免二义性。

8.32 可读性要求

2.1 可读性第一,效率第二。
2.2 保持注释与代码完全一致。
2.3 每个源程序文件,都有文件头说明,说明规格见规范。
2.4 每个函数,都有函数头说明,说明规格见规范。
2.5 主要变量(结构、联合、类或对象)定义或引用时,注释能反映其含义。
2.7 常量定义(DEFINE)有相应说明。
2.8 处理过程的每个阶段都有相关注释说明。
2.9 在典型算法前都有注释。
2.10 利用缩进来显示程序的逻辑结构,缩进量一致并以Tab键为单位,定义Tab为 6个字节。
2.11 循环、分支层次不要超过五层。
2.12 注释可以与语句在同一行,也可以在上行。
2.13 空行和空白字符也是一种特殊注释。
2.14 一目了然的语句不加注释。
2.15 注释的作用范围可以为:定义、引用、条件分支以及一段代码。
2.16 注释行数(不包括程序头和函数头说明部份)应占总行数的 1/5 到 1/3。

8.33 结构化要求

3.1 禁止出现两条等价的支路。
3.2 用 IF 语句来强调只执行两组语句中的一组。禁止 ELSE GOTO 和 ELSE RETURN。
3.3 用 CASE 实现多路分支。
3.4 避免从循环引出多个出口。
3.5 函数只有一个出口。
3.6 不使用条件赋值语句。
3.7 避免不必要的分支。
3.8 不要轻易用条件分支去替换逻辑表达式。

8.34 程序命名规则
4.1 变量

变量命名不推荐采用匈牙利命名法,除非命名会和关键字产生冲突的时候,才采用类型缩写+变量实名的匈牙利命名法。一般情况下,变量命名应该简单,尽量使用缩写。如果是一般的值类型,如integer string,则直接使用变量用途命名,尽量使用全名:
Dim count As Interger
Dim name As String
对于一般的临时性变量定义,应该尽可能地简单,如:
Dim i As Interger
Dim j Ad Interger
如果是类对象或自定义类型对象,则在单一使用情况下使用类名称或自定义类型名称的简写来命名:
Dim lyr As MapXLip.layer
如果非单一使用,则使用类型名称缩写为前缀,即使用匈牙利命名法:
Dim emReader As EntityManager
Dim emSave As EntityManager
缩写规则如下:
如果名称由多个单词组成,则取每个单词的首字母,如:EntityManager简称em。
如果名称由一个单词组成,则对单词进行分段取首字母,如Dataset简称ds。
范围标识:
全局变量前面加前缀:’g’
模块级变量加前缀:’m’
过程级变量不加前缀

4.2 控件名

控件命名一律使用控件类型缩写+控件用途的命名方式,类型缩写应控制在3个字母以内,缩写规则同变量命名,以下是常用控件的类型缩写,应该严格遵守,如果使用了新的控件,则首先应该在小组内协同一致其类型名称缩写后再进行使用。
map   MapX
cmb        Combo box
chk        Checkbox
cmd     Command button  
dlg        Common dialog control
fra         Frame
frm     Form  
gra     Graph
grd        EditGrid MSHFlexGrid FlexGrid DataGrid
img        Image ImageList
lab        Label
ln        Line
lst        List box  
lv        ListView
mnu     Menu control  
opt        Option button
pic        Picture  
sbr        Scroll bar
shp        Shape  
st        StatusBar
tb        ToolBar
tmr        Timer
txt         Textbox
tv        TreeView

4.3函数

此处函数包括sub和function,以下这两种过程统称为函数。函数表示的是一个动作,所以它的结构应该是 动词+名词,动词必须小写,后面的名称首字母大写,如:
updateGrid
translateGrid
函数命名尽量不要使用缩写,而且它的名称应该使人一目了然,能够从名称就知道这个函数的功能,不要使用无意义的函数名称,如:translate, update,readData。当函数名称不足以表达其功能时,使用在函数头部加上让调用者足够明白的注释。参数的命名:参数命名的原则是全部小写,如果参数包括两个或以上的单词时,首单词字母小写,其它单词首字母大定,如showCol、isUpdate。

4.4 常量

常量的命名应该全部大写,使用’_’作为单词间的分隔符,单词尽量使用全名称,例如:Public Const MSG_EMPTY_ROW    As String = “有空行存在!”

4.5 属性

属性的命名采用首字母大写的原则,如lyr.Datasets

4.6 空行

空行是区分代码块与块的间隔,在函数之间必须加上空行(两行左右),而函数内部,变量声明块和实现块(实现块指除变量声明外的其它代码)要使用空行来间隔(一行),实现块的内部,通过空行来标识一个功能段。但是程序当中也不能留有过多的空格,以免影响程序的可读性。

4.7 注释

注释不能太多,单必须能让别人对你所写的程序能明白其功能,注释统一用于程序后,用字符’开始。当定义新的函数时在函数名的开头要对该函数的功能进行解释。

4.8 运算符的运用

在连接字符串时总是使用 & 运算符,而当处理数值时常用 + 运算符。当在两个变体上操作时,用 + 运算符来连接可能会导致问题。例如:
vntVar1 = \"10.01\"
vntVar2 = 11
vntResult = vntVar1 + vntVar2 \\'vntResult = 21.01
vntResult = vntVar1 & vntVar2 \\'vntResult = 10.0111
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

每日推荐上一条 /1 下一条

小黑屋|手机版|湖南大学望麓自卑校园传媒 ( 湘ICP备14014987号 )

GMT+8, 2024-11-24 19:30 , Processed in 0.072838 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表