什么是编码约定?
编码约定是帮助您使用 Microsoft Visual Basic Scripting Edition 编写代码的一些建议。编码约定包含以下内容:
·对象、变量和过程的命名约定
·注释约定
·文本格式和缩进指南
使用一致的编码约定的主要原因是使 Script 或 Script 集的结构和编码样式标准化,这样代码易于阅读和理解。使用好的编码约定可以使源代码明白、易读、准确,更加直观且与其他语言约定保持一致。
常数命名约定
VBScript 的早期版本不允许创建用户自定义常数。如果要使用常数,则常数以变量的方式实现,且全部字母大写以和其他变量区分。常数名中的多个单词用下划线 (_) 分隔。例如:
USER_LIST_MAX
NEW_LINE
这种标识常数的方法依旧可行,但您还可以选择其他方案,用 Const 语句创建真正的常数。这个
约定使用大小写混合的格式,并以"con"作为常数名的前缀。例如:
conYourOwnConstant
变量命名约定
出于易读和一致性的目的,请在 VBScript 代码中使用以下变量命名约定:
子类型 前缀 示例
Boolean bln blnFound
Byte byt bytRasterData
Date (Time) dtm dtmStart
Double dbl dblTolerance
Error err errOrderNum
Integer int intQuantity
Long lng lngDistance
Object obj objCurrent
Single sng sngAverage
String str strFirstName
变量作用域
变量应定义在尽量小的作用域中。VBScript 变量的作用域如下所示:
作用域 声明变量处 可见性
过程级 事件、函数或子过程 在声明变量的过程中可见
Script 级 HTML 页面的 HEAD 部分,任何过程之外 在 Script 的所有过程中可见
变量作用域前缀
随着 Script 代码长度的增加,有必要快速区分变量的作用域。在类型前缀前面添加一个单字符前缀可以实现这一点,而不致使变量名过长。
作用域 前缀 示例
过程级 无 dblVelocity
Script 级 s sblnCalcInProgress
描述性变量名和过程名
变量名或过程名的主体应使用大小写混合格式,并且尽量完整地描述其目的。另外,过程名应以动词开始,例如 InitNameArray 或 CloseDialog。
对于经常使用的或较长的名称,推荐使用标准缩写以使名称保持在适当的长度内。通常多于 32 个字符的变量名会变得难以阅读。使用缩写时,应确保在整个 Script 中保持一致。例如,在一个 Script 或 Script 集中随意切换 Cnt 和 Count 将造成混乱。
对象命名约定
下表列出了 VBScript 中可能用到的对象命名约定(推荐):
对象类型 前缀 示例
3D 面板 pnl pnlGroup
动画按钮 ani aniMailBox
复选框 chk chkReadOnly
组合框、下拉列表框 cbo cboEnglish
命令按钮 cmd cmdExit
公共对话框 dlg dlgFileOpen
框架 fra fraLanguage
水平滚动条 hsb hsbVolume
图像 img imgIcon
标签 lbl lblHelpMessage
直线 lin linVertical
列表框 lst lstPolicyCodes
旋钮 spn spnPages
文本框 txt txtLastName
垂直滚动条 vsb vsbRate
滑块 sld sldScale
代码注释约定
所有过程的开始部分都应有描述其功能的简要注释。这些注释并不描述细节信息(如何实现功能),这是因为细节有时要频繁更改。这样就可以避免不必要的注释维护工作以及错误的注释。细节信息由代码本身及必要的内部注释来描述。
当传递给过程的参数的用途不明显,或过程对参数的取值范围有要求时,应加以说明。如果过程改变了函数和变量的返回值(特别是通过参数引用来改变),也应在过程的开始部分描述该返回值。
过程开始部分的注释应包含以下区段标题。相关样例,请参阅后面的"格式化代码"部分。
区段标题 注释内容
目的 过程的功能(不是实现功能的方法)。
假设 其状态影响此过程的外部变量、控件或其他元素的列表。
效果 过程对每个外部变量、控件或其他元素的影响效果的列表。
输入 每个目的不明显的参数的解释。每个参数都应占据单独一行并有其内部注释。
返回 返回值的解释。
请记住以下几点:
·每个重要的变量声明都应有内部注释,描述变量的用途。
·应清楚地命名变量、控件和过程,仅在说明复杂细节时需要内部注释。
·应在 Script 的开始部分包含描述该 Script 的概述,列举对象、过程、运算法则、对话框和其他系统从属物。有时一段描述运算法则的假码是很有用的。
格式化代码
应尽可能多地保留屏幕空间,但仍允许用代码格式反映逻辑结构和嵌套。以下为几点提示:
·标准嵌套块应缩进 4 个空格。
·过程的概述注释应缩进 1 个空格。
·概述注释后的最高层语句应缩进 4 个空格,每一层嵌套块再缩进 4 个空格。例如:
'*********************************************************
' 目的: 返回指定用户在 UserList 数组中第一次出现的位置。
' 输入: strUserList(): 所查找的用户列表。
' strTargetUser: 要查找的用户名。
' 返回: strTargetUser 在 strUserList 数组中第一次出现时的索引。
' 如果目标用户未找到,返回 -1。
'*********************************************************
Function intFindUser (strUserList(), strTargetUser)
Dim i ' 循环计数器。
Dim blnFound ' 发现目标的标记。
intFindUser = -1
i = 0 ' 初始化循环计数器。
Do While i <= Ubound(strUserList) and Not blnFound
If strUserList(i) = strTargetUser Then
blnFound = True ' 标记设为 True。
intFindUser = i ' 返回值设为循环计数器。
End If
i = i + 1 ' 循环计数器加 1。
Loop
End Function
编码约定是帮助您使用 Microsoft Visual Basic Scripting Edition 编写代码的一些建议。编码约定包含以下内容:
·对象、变量和过程的命名约定
·注释约定
·文本格式和缩进指南
使用一致的编码约定的主要原因是使 Script 或 Script 集的结构和编码样式标准化,这样代码易于阅读和理解。使用好的编码约定可以使源代码明白、易读、准确,更加直观且与其他语言约定保持一致。
常数命名约定
VBScript 的早期版本不允许创建用户自定义常数。如果要使用常数,则常数以变量的方式实现,且全部字母大写以和其他变量区分。常数名中的多个单词用下划线 (_) 分隔。例如:
USER_LIST_MAX
NEW_LINE
这种标识常数的方法依旧可行,但您还可以选择其他方案,用 Const 语句创建真正的常数。这个
约定使用大小写混合的格式,并以"con"作为常数名的前缀。例如:
conYourOwnConstant
变量命名约定
出于易读和一致性的目的,请在 VBScript 代码中使用以下变量命名约定:
子类型 前缀 示例
Boolean bln blnFound
Byte byt bytRasterData
Date (Time) dtm dtmStart
Double dbl dblTolerance
Error err errOrderNum
Integer int intQuantity
Long lng lngDistance
Object obj objCurrent
Single sng sngAverage
String str strFirstName
变量作用域
变量应定义在尽量小的作用域中。VBScript 变量的作用域如下所示:
作用域 声明变量处 可见性
过程级 事件、函数或子过程 在声明变量的过程中可见
Script 级 HTML 页面的 HEAD 部分,任何过程之外 在 Script 的所有过程中可见
变量作用域前缀
随着 Script 代码长度的增加,有必要快速区分变量的作用域。在类型前缀前面添加一个单字符前缀可以实现这一点,而不致使变量名过长。
作用域 前缀 示例
过程级 无 dblVelocity
Script 级 s sblnCalcInProgress
描述性变量名和过程名
变量名或过程名的主体应使用大小写混合格式,并且尽量完整地描述其目的。另外,过程名应以动词开始,例如 InitNameArray 或 CloseDialog。
对于经常使用的或较长的名称,推荐使用标准缩写以使名称保持在适当的长度内。通常多于 32 个字符的变量名会变得难以阅读。使用缩写时,应确保在整个 Script 中保持一致。例如,在一个 Script 或 Script 集中随意切换 Cnt 和 Count 将造成混乱。
对象命名约定
下表列出了 VBScript 中可能用到的对象命名约定(推荐):
对象类型 前缀 示例
3D 面板 pnl pnlGroup
动画按钮 ani aniMailBox
复选框 chk chkReadOnly
组合框、下拉列表框 cbo cboEnglish
命令按钮 cmd cmdExit
公共对话框 dlg dlgFileOpen
框架 fra fraLanguage
水平滚动条 hsb hsbVolume
图像 img imgIcon
标签 lbl lblHelpMessage
直线 lin linVertical
列表框 lst lstPolicyCodes
旋钮 spn spnPages
文本框 txt txtLastName
垂直滚动条 vsb vsbRate
滑块 sld sldScale
代码注释约定
所有过程的开始部分都应有描述其功能的简要注释。这些注释并不描述细节信息(如何实现功能),这是因为细节有时要频繁更改。这样就可以避免不必要的注释维护工作以及错误的注释。细节信息由代码本身及必要的内部注释来描述。
当传递给过程的参数的用途不明显,或过程对参数的取值范围有要求时,应加以说明。如果过程改变了函数和变量的返回值(特别是通过参数引用来改变),也应在过程的开始部分描述该返回值。
过程开始部分的注释应包含以下区段标题。相关样例,请参阅后面的"格式化代码"部分。
区段标题 注释内容
目的 过程的功能(不是实现功能的方法)。
假设 其状态影响此过程的外部变量、控件或其他元素的列表。
效果 过程对每个外部变量、控件或其他元素的影响效果的列表。
输入 每个目的不明显的参数的解释。每个参数都应占据单独一行并有其内部注释。
返回 返回值的解释。
请记住以下几点:
·每个重要的变量声明都应有内部注释,描述变量的用途。
·应清楚地命名变量、控件和过程,仅在说明复杂细节时需要内部注释。
·应在 Script 的开始部分包含描述该 Script 的概述,列举对象、过程、运算法则、对话框和其他系统从属物。有时一段描述运算法则的假码是很有用的。
格式化代码
应尽可能多地保留屏幕空间,但仍允许用代码格式反映逻辑结构和嵌套。以下为几点提示:
·标准嵌套块应缩进 4 个空格。
·过程的概述注释应缩进 1 个空格。
·概述注释后的最高层语句应缩进 4 个空格,每一层嵌套块再缩进 4 个空格。例如:
'*********************************************************
' 目的: 返回指定用户在 UserList 数组中第一次出现的位置。
' 输入: strUserList(): 所查找的用户列表。
' strTargetUser: 要查找的用户名。
' 返回: strTargetUser 在 strUserList 数组中第一次出现时的索引。
' 如果目标用户未找到,返回 -1。
'*********************************************************
Function intFindUser (strUserList(), strTargetUser)
Dim i ' 循环计数器。
Dim blnFound ' 发现目标的标记。
intFindUser = -1
i = 0 ' 初始化循环计数器。
Do While i <= Ubound(strUserList) and Not blnFound
If strUserList(i) = strTargetUser Then
blnFound = True ' 标记设为 True。
intFindUser = i ' 返回值设为循环计数器。
End If
i = i + 1 ' 循环计数器加 1。
Loop
End Function
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月22日
2024年11月22日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]