佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > VBScript教程 第十課 VBScript編碼約定

VBScript教程 第十課 VBScript編碼約定

熱門(mén)標(biāo)簽:鐵路電話系統(tǒng) 檢查注冊(cè)表項(xiàng) 網(wǎng)站文章發(fā)布 智能手機(jī) 服務(wù)器配置 呼叫中心市場(chǎng)需求 銀行業(yè)務(wù) 美圖手機(jī)
什么是編碼約定?

編碼約定是幫助您使用 Microsoft Visual Basic Scripting Edition 編寫(xiě)代碼的一些建議。編碼約定包含以下內(nèi)容:

·對(duì)象、變量和過(guò)程的命名約定
·注釋約定
·文本格式和縮進(jìn)指南

使用一致的編碼約定的主要原因是使 Script 或 Script 集的結(jié)構(gòu)和編碼樣式標(biāo)準(zhǔn)化,這樣代碼易于閱讀和理解。使用好的編碼約定可以使源代碼明白、易讀、準(zhǔn)確,更加直觀且與其他語(yǔ)言約定保持一致。

常數(shù)命名約定

VBScript 的早期版本不允許創(chuàng)建用戶(hù)自定義常數(shù)。如果要使用常數(shù),則常數(shù)以變量的方式實(shí)現(xiàn),且全部字母大寫(xiě)以和其他變量區(qū)分。常數(shù)名中的多個(gè)單詞用下劃線 (_) 分隔。例如:

USER_LIST_MAX
NEW_LINE

這種標(biāo)識(shí)常數(shù)的方法依舊可行,但您還可以選擇其他方案,用 Const 語(yǔ)句創(chuàng)建真正的常數(shù)。這個(gè)
約定使用大小寫(xiě)混合的格式,并以"con"作為常數(shù)名的前綴。例如:

conYourOwnConstant

變量命名約定

出于易讀和一致性的目的,請(qǐng)?jiān)?VBScript 代碼中使用以下變量命名約定:

子類(lèi)型         前綴          示例
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


變量作用域

變量應(yīng)定義在盡量小的作用域中。VBScript 變量的作用域如下所示:

作用域 聲明變量處 可見(jiàn)性
過(guò)程級(jí) 事件、函數(shù)或子過(guò)程 在聲明變量的過(guò)程中可見(jiàn)
Script 級(jí) HTML 頁(yè)面的 HEAD 部分,任何過(guò)程之外 在 Script 的所有過(guò)程中可見(jiàn)


變量作用域前綴

隨著 Script 代碼長(zhǎng)度的增加,有必要快速區(qū)分變量的作用域。在類(lèi)型前綴前面添加一個(gè)單字符前綴可以實(shí)現(xiàn)這一點(diǎn),而不致使變量名過(guò)長(zhǎng)。

作用域         前綴         示例
過(guò)程級(jí)         無(wú)         dblVelocity
Script         級(jí)         s sblnCalcInProgress


描述性變量名和過(guò)程名

變量名或過(guò)程名的主體應(yīng)使用大小寫(xiě)混合格式,并且盡量完整地描述其目的。另外,過(guò)程名應(yīng)以動(dòng)詞開(kāi)始,例如 InitNameArray 或 CloseDialog。

對(duì)于經(jīng)常使用的或較長(zhǎng)的名稱(chēng),推薦使用標(biāo)準(zhǔn)縮寫(xiě)以使名稱(chēng)保持在適當(dāng)?shù)拈L(zhǎng)度內(nèi)。通常多于 32 個(gè)字符的變量名會(huì)變得難以閱讀。使用縮寫(xiě)時(shí),應(yīng)確保在整個(gè) Script 中保持一致。例如,在一個(gè) Script 或 Script 集中隨意切換 Cnt 和 Count 將造成混亂。

對(duì)象命名約定

下表列出了 VBScript 中可能用到的對(duì)象命名約定(推薦):

對(duì)象類(lèi)型              前綴           示例
3D 面板               pnl           pnlGroup
動(dòng)畫(huà)按鈕              ani           aniMailBox
復(fù)選框               chk           chkReadOnly
組合框、下拉列表框         cbo           cboEnglish
命令按鈕              cmd           cmdExit
公共對(duì)話框             dlg           dlgFileOpen
框架                fra           fraLanguage
水平滾動(dòng)條             hsb           hsbVolume
圖像                img           imgIcon
標(biāo)簽                lbl           lblHelpMessage
直線                lin           linVertical
列表框               lst           lstPolicyCodes
旋鈕                spn           spnPages
文本框               txt           txtLastName
垂直滾動(dòng)條             vsb           vsbRate
滑塊                sld           sldScale

代碼注釋約定

所有過(guò)程的開(kāi)始部分都應(yīng)有描述其功能的簡(jiǎn)要注釋。這些注釋并不描述細(xì)節(jié)信息(如何實(shí)現(xiàn)功能),這是因?yàn)榧?xì)節(jié)有時(shí)要頻繁更改。這樣就可以避免不必要的注釋維護(hù)工作以及錯(cuò)誤的注釋。細(xì)節(jié)信息由代碼本身及必要的內(nèi)部注釋來(lái)描述。

當(dāng)傳遞給過(guò)程的參數(shù)的用途不明顯,或過(guò)程對(duì)參數(shù)的取值范圍有要求時(shí),應(yīng)加以說(shuō)明。如果過(guò)程改變了函數(shù)和變量的返回值(特別是通過(guò)參數(shù)引用來(lái)改變),也應(yīng)在過(guò)程的開(kāi)始部分描述該返回值。

過(guò)程開(kāi)始部分的注釋?xiě)?yīng)包含以下區(qū)段標(biāo)題。相關(guān)樣例,請(qǐng)參閱后面的"格式化代碼"部分。

區(qū)段標(biāo)題 注釋內(nèi)容
目的   過(guò)程的功能(不是實(shí)現(xiàn)功能的方法)。
假設(shè)   其狀態(tài)影響此過(guò)程的外部變量、控件或其他元素的列表。
效果   過(guò)程對(duì)每個(gè)外部變量、控件或其他元素的影響效果的列表。
輸入   每個(gè)目的不明顯的參數(shù)的解釋。每個(gè)參數(shù)都應(yīng)占據(jù)單獨(dú)一行并有其內(nèi)部注釋。
返回   返回值的解釋。

請(qǐng)記住以下幾點(diǎn):

·每個(gè)重要的變量聲明都應(yīng)有內(nèi)部注釋?zhuān)枋鲎兞康挠猛尽?
·應(yīng)清楚地命名變量、控件和過(guò)程,僅在說(shuō)明復(fù)雜細(xì)節(jié)時(shí)需要內(nèi)部注釋。
·應(yīng)在 Script 的開(kāi)始部分包含描述該 Script 的概述,列舉對(duì)象、過(guò)程、運(yùn)算法則、對(duì)話框和其他系統(tǒng)從屬物。有時(shí)一段描述運(yùn)算法則的假碼是很有用的。

格式化代碼

應(yīng)盡可能多地保留屏幕空間,但仍允許用代碼格式反映邏輯結(jié)構(gòu)和嵌套。以下為幾點(diǎn)提示:

·標(biāo)準(zhǔn)嵌套塊應(yīng)縮進(jìn) 4 個(gè)空格。
·過(guò)程的概述注釋?xiě)?yīng)縮進(jìn) 1 個(gè)空格。
·概述注釋后的最高層語(yǔ)句應(yīng)縮進(jìn) 4 個(gè)空格,每一層嵌套塊再縮進(jìn) 4 個(gè)空格。例如:

'*********************************************************
' 目的: 返回指定用戶(hù)在 UserList 數(shù)組中第一次出現(xiàn)的位置。
' 輸入: strUserList(): 所查找的用戶(hù)列表。
' strTargetUser: 要查找的用戶(hù)名。
' 返回: strTargetUser 在 strUserList 數(shù)組中第一次出現(xiàn)時(shí)的索引。
' 如果目標(biāo)用戶(hù)未找到,返回 -1。
'*********************************************************

Function intFindUser (strUserList(), strTargetUser)
Dim i ' 循環(huán)計(jì)數(shù)器。
Dim blnFound ' 發(fā)現(xiàn)目標(biāo)的標(biāo)記。
intFindUser = -1
i = 0 ' 初始化循環(huán)計(jì)數(shù)器。
Do While i = Ubound(strUserList) and Not blnFound
If strUserList(i) = strTargetUser Then
blnFound = True ' 標(biāo)記設(shè)為 True。
intFindUser = i ' 返回值設(shè)為循環(huán)計(jì)數(shù)器。
End If
i = i + 1 ' 循環(huán)計(jì)數(shù)器加 1。
Loop
End Function


標(biāo)簽:河南 長(zhǎng)治 上海 新疆 樂(lè)山 沈陽(yáng) 滄州 紅河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《VBScript教程 第十課 VBScript編碼約定》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢(xún)

    • 400-1100-266
    阳原县| 关岭| 阿拉善左旗| 海南省| 二手房| 鄄城县| 娄底市| 田东县| 宿迁市| 桐乡市| 洱源县| 安福县| 通化县| 眉山市| 云南省| 河东区| 河间市| 汨罗市| 获嘉县| 辰溪县| 霍城县| 安宁市| 榆树市| 大英县| 东光县| 桐乡市| 廊坊市| 武鸣县| 田阳县| 广宁县| 浙江省| 郎溪县| 岚皋县| 正蓝旗| 石柱| 和静县| 宁陵县| 青阳县| 大姚县| 宁远县| 孙吴县|