計(jì)算機(jī)等級(jí)考試二級(jí)VB編程優(yōu)良習(xí)慣

字號(hào):

1、“&”替換“+”
    在很多人的編程語(yǔ)言中,用“+”來(lái)連接字符串,這樣容易導(dǎo)致歧義。良好的習(xí)慣是用“&”來(lái)連接字符串。
    不正確:
    Dim sMessage As String
    sMessage = "1" + "2"
    正確:
    Dim sMessage As String
    sMessage = "1" & "2"
    注意:"&"的后面有個(gè)空格
    2、變量命名大小寫(xiě),語(yǔ)句錯(cuò)落有秩,源代碼維護(hù)方面
    下面大家比較一下以下兩段代碼:
    讀懂難度很大的代碼:
    Dim SNAME As String
    Dim NTURN As Integer
    If NTURN = 0 Then
    If SNAME = "vbeden" Then
    Do While NTURN < 4
    NTURN = NTURN + 1
    Loop
    End If
    End If
    容易讀懂的代碼:
    Dim sName As String
    Dim nTurn As Integer
    If nTurn = 0 Then
    If sName = "vbeden" Then
    Do While nTurn < 4
    nTurn = nTurn + 1
    Loop
    End If
    End If
    3、請(qǐng)養(yǎng)成以下的“對(duì)象命名約定”良好習(xí)慣
    應(yīng)用程序頻繁使用許多菜單控件,對(duì)于這些控件具備一組的命名約定很實(shí)用。除了最前面 "mnu" 標(biāo)記以外,菜單控件的前綴應(yīng)該被擴(kuò)展:對(duì)每一級(jí)嵌套增加一個(gè)附加前綴,將最終的菜單的標(biāo)題放在名稱字符串的最后。下表列出了一些例子。
    當(dāng)使用這種命名約定時(shí),一個(gè)特定的菜單組的所有成員一個(gè)接一個(gè)地列在 Visual Basic 的“屬性”窗口中。而且,菜單控件的名字清楚地表示出它們所屬的菜單項(xiàng)。
    為其它控件選擇前綴
    對(duì)于上面沒(méi)有列出的控件,應(yīng)該用的由兩個(gè)或三個(gè)字符組成的前綴使它們標(biāo)準(zhǔn)化,以保持一致性。只有當(dāng)需要澄清時(shí),才使用多于三個(gè)字符的前綴。
    常量和變量命名約定
    除了對(duì)象之外,常量和變量也需要良好格式的命名約定。本節(jié)列出了 Visual Basic 支持的常量和變量的推薦約定。并且討論標(biāo)識(shí)數(shù)據(jù)類型和范圍的問(wèn)題。
    變量應(yīng)該總是被定義在盡可能小的范圍內(nèi)。全局 (Public) 變量可以導(dǎo)致極其復(fù)雜的狀態(tài)機(jī)構(gòu),并且使一個(gè)應(yīng)用程序的邏輯非常難于理解。全局變量也使代碼的重用和維護(hù)更加困難。
     在 Visual Basic 的應(yīng)用程序中,只有當(dāng)沒(méi)有其它方便途徑在窗體之間共享數(shù)據(jù)時(shí)才使用全局變量。當(dāng)必須使用全局變量時(shí),在一個(gè)單一模塊中聲明它們,并按功能分組。給這個(gè)模塊取一個(gè)有意義的名稱,以指明它的作用,如 Public.bas。
     較好的編碼習(xí)慣是盡可能寫(xiě)模塊化的代碼。例如,如果應(yīng)用程序顯示一個(gè)對(duì)話框,就把要完成這一對(duì)話任務(wù)所需要的所有控件和代碼放在單一的窗體中。這有助于將應(yīng)用程序的代碼組織在有用的組件中,并減小它運(yùn)行時(shí)的開(kāi)銷。
     除了全局變量(應(yīng)該是不被傳遞的),過(guò)程和函數(shù)應(yīng)該僅對(duì)傳遞給它們的對(duì)象操作。在過(guò)程中使用的全局變量應(yīng)該在過(guò)程起始處的聲明部分中標(biāo)識(shí)出來(lái)。此外,應(yīng)該用 ByVal 將參數(shù)傳遞給 Sub 過(guò)程及 function 過(guò)程,除非明顯地需要改變已傳遞的參數(shù)值。
     隨著工程大小的增長(zhǎng),劃分變量范圍的工作也迅速增加。在類型前綴的前面放置單字母范圍前綴標(biāo)明了這種增長(zhǎng),但變量名的長(zhǎng)度并沒(méi)有增加很多。
    如果一個(gè)變量在標(biāo)準(zhǔn)模塊或窗體模塊中被聲明為 Public,那么該變量具有全局范圍。如果一個(gè)變量在標(biāo)準(zhǔn)模塊或窗體模塊中被分別聲明為 Private,那么該變量有模塊級(jí)范圍。
    注意: 一致性是卓有成效地使用這種技術(shù)的關(guān)鍵;Visual Basic 中的語(yǔ)法檢查器不會(huì)捕捉以 "p." 開(kāi)頭的模塊級(jí)變量。
    常量
    常量名的主體是大小寫(xiě)混合的,每個(gè)單詞的首字母大寫(xiě)。盡管標(biāo)準(zhǔn) Visual Basic 常量不包含數(shù)據(jù)類型和范圍信息,但是象 i、s、g 和 m 這樣的前綴對(duì)于理解一個(gè)常量的值和范圍還是很有用的。對(duì)于常量名,應(yīng)遵循與變量相同的規(guī)則。例如:
    mintUserListMax ’對(duì)用戶列表的限制
    ’(整數(shù)值,本地到模塊)
    gstrNewLine ’新行字符
    ’(字符串,應(yīng)用程序全局使用)
    變量
    聲明所有的變量將會(huì)節(jié)省編程時(shí)間,因?yàn)殒I入操作引起的錯(cuò)誤減少了(例如,究竟是 aUserNameTmp,還是 sUserNameTmp,還是 sUserNameTemp)。在“選項(xiàng)”對(duì)話框的“編輯器”標(biāo)簽中,復(fù)選“要求變量聲明”選項(xiàng)。Option Explicit 語(yǔ)句要求在 Visual Basic 程序中聲明所有的變量。