国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
VB命名規(guī)則及代碼規(guī)范

1.       VBA命名規(guī)則

一個(gè)好的命名規(guī)則可以提高程序的可讀性,減少錯(cuò)誤發(fā)生的概率,命名規(guī)則不是一定的,不同的人有不同的規(guī)則和習(xí)慣,但在編程過程中,對于個(gè)人或工作組,一定要遵守相同的命名規(guī)則。

1.1.       變量、常量、自定義類型和枚舉

1?1概括了變量、常量的基本命名規(guī)則。

 

1?1 變量、常量和枚舉類型的命名規(guī)則

元素

命名規(guī)則

變量

<范圍><數(shù)組><數(shù)據(jù)類型>描述(首字母大寫)

常量

<范圍><數(shù)據(jù)類型>描述(全部大寫)

用戶自定義類型

Type 描述名稱

    <數(shù)據(jù)類型>描述

End Type

枚舉類型

Enum <工程前綴>一般描述

    <工程前綴><一般描述><具體名稱1>

    <工程前綴><一般描述><具體名稱2>

End Enum

 

<范圍>表示了變量的作用域,對于Private類型和模塊級變量,一般使用“m”前綴表示,對于Public類型的變量,一般使用“g”前綴表示,而對于過程內(nèi)的局部變量,則不使用前綴。如果是數(shù)組,在范圍前綴后增加“a”表示變量為數(shù)組。

對于數(shù)據(jù)類型,一般使用 1?2的前綴表示。

 

1?2 命名規(guī)則常用前綴

前綴

數(shù)據(jù)類型

前綴

數(shù)據(jù)類型

前綴

數(shù)據(jù)類型

is

Boolean

cm

ADODB.Command

cmb

MSForms.ComboBox

byt

Byte

cn

ADODB.Connection

chk

MSForms.CheckBox

cur

Currency

rs

ADODB.Recordset

cmd

MSForms.CommandButton

dte

Date

 

 

fra

MSForms.Frame

dec

Decimal

cht

Excel.Chart

lbl

MSForms.Label

f

Double,Single

rng

Excel.Range

lst

MSForms.ListBox

i

IntegerLong

wb

Excel.Workbook

mpg

MSForms.MultiPage

obj

Object

ws

Excel.Worksheet

opt

MSForms.OptionButton

str

String

 

 

spn

MSForms.SpinButton

u

User-defined type

cbr

Office.CommandBar

txt

MSForms.TextBox

v

Variant

ctl

Office.CommandBarControl

ref

RefEdit Control

col

VBA.Collection

cls

自定義類

frm

用戶窗體

 

變量的描述部分最好使用有意義的字符串,使用1-2個(gè)英文單詞表示,首字母大寫,例如“strUserName”、“iPeopleAge”。除了循環(huán)變量使用i、j,臨時(shí)變量使用tmp之類的變量外,不要使用太短的命名,但也不要使用太長不易記憶的名稱。

常量則一般使用全部大寫的方式,以與變量區(qū)別。

對于枚舉類型,整個(gè)工程一定要使用一致的規(guī)則,每個(gè)枚舉常量都包含工程前綴,變量前綴和本身描述幾部分,例如:

Private Enum schDayType

    schDayTypeUnscheduled

    schDayTypeProduction

    schDayTypeDownTime

    schDayTypeHoliday

End Enum

1.2.       過程和函數(shù)

過程和函數(shù)命名一般使用“名詞 + 動(dòng)詞”的方式,首字母大寫,也可以使用“動(dòng)詞 + 名詞”方式,對于過程和函數(shù)的參數(shù),命名方式見前,為了和局部變量區(qū)別,可以不使用表示參數(shù)變量類型的前綴。例如,我們可以命名如下的過程:

GetUserName(id as long) As String

1.3.       模塊、類模塊和用戶窗體

模塊使用類似過程的命名,用幾個(gè)表示其用途的首字母大寫的短語來表示,例如“PlotChartTools”;類模塊增加前綴“C”,以與標(biāo)準(zhǔn)模塊相區(qū)別,例如“CIniTools”、“CEmployee”等;用戶窗體則以“frm”為前綴,如“frmAbout”、“frmRegTools”。這樣,在代碼中我們可以這樣使用類模塊:

Dim clsMyClass As CMyClass

Set clsMyClass = New CMyClass

類模塊與其對象差別一目了然。由于VBA對于窗體可以使用缺省窗體,不需要?jiǎng)?chuàng)建實(shí)例,在代碼中可以直接使用,因此,使用了與變量定義一樣的前綴。例如:

frmRegTools.Show

1.4.       VBA工程

VBA工程一般使用與其文件名同名的名字,一方面,當(dāng)打開幾個(gè)工程的時(shí)候可以方便的區(qū)分工程,另一方面,在工程之間引用的時(shí)候,需要不同的名稱。

2.       VBA代碼規(guī)范

代碼規(guī)范表示了如何定義變量、過程、函數(shù)(見前),如何組織代碼,控制縮進(jìn),添加注釋等內(nèi)容。代碼規(guī)范的目的在于產(chǎn)生一致的代碼,提高代碼的可讀性,使其易于修改和交流。以下規(guī)范并非必須遵守,當(dāng)使用規(guī)范破壞了代碼的可讀性,那么就沒有必要遵從代碼規(guī)范了,這種情況需要自行判斷。

2.1.       代碼的排版

縮進(jìn)

一般來說,代碼的縮進(jìn)應(yīng)該為4個(gè)空格,在VBA IDE中選中自動(dòng)縮進(jìn),并設(shè)置為4個(gè)字符。一個(gè)過程的語句要比過程名稱縮進(jìn)4個(gè)空格,在循環(huán),判斷語句、With語句之后也要縮進(jìn)。例如:

If strText = " " Then

     NoZeroLengthString = Null

Else

     NoZeroLengthString = strText

End If

 

行的長度

一行代碼盡量不要過長,對于大多數(shù)編程規(guī)范,建議一行代碼的最大長度為80個(gè)字符,在VBA中,可以使用續(xù)行賦“-”將長的代碼行分為數(shù)行,后續(xù)行應(yīng)該縮進(jìn)以表示與前行的關(guān)系。例如:

AverageValue = TotalValue / _

    Worksheet(1).Range(A1:A1000).Rows.Count

 

空行

一個(gè)模塊內(nèi)部,過程之間要使用空行隔開,模塊的變量定義和過程之間也應(yīng)該空1行。過程內(nèi)部,變量定義和代碼應(yīng)該空1行。在一組操作和另一組操作之間也應(yīng)該空1行顯示其邏輯關(guān)系??招锌梢院芎玫奶岣叱绦虻目勺x性,但同時(shí),空行沒有必須遵守的規(guī)則,其使用的目的就是要顯示程序的邏輯關(guān)系。

 

不要將多個(gè)語句放在同一行上

雖然VBA允許將多條語句放在一行,但不推薦這么做。

2.2.       注釋

書寫程序的同時(shí),應(yīng)該同時(shí)對關(guān)鍵代碼,模塊,過程增加注釋,更改程序的同時(shí),必須同時(shí)更改注釋。必須時(shí)刻保證注釋與程序代碼一致,否則還不如不加注釋。對于簡短的注釋,不需要加句號,否則應(yīng)該增加句號,組成段落。

如果可能,建議盡量使用英文書寫注釋,因?yàn)檫@樣會(huì)帶來交流的便利,特別是在正式的開發(fā)中。

 

區(qū)塊注釋

區(qū)塊注釋通常描述其下的部分或全部代碼,例如模塊說明或者過程說明。其縮進(jìn)要和它所描述的代碼一致。模塊的注釋應(yīng)該位于模塊的所有代碼之前,Option語句之后,過程的注釋位于過程定義之后,并保證縮進(jìn)一致。對于模塊的注釋,注釋結(jié)束后應(yīng)該有一空行,其前后可以加一些修飾以區(qū)別與其他注釋,而過程注釋則不需要。例如:

#001 Option Explicit

#002

#003 '***************************************************

#004 '主程序模塊,提供按鈕調(diào)用,對話框彈出等服務(wù)

#005 '***************************************************

#006

#007 Public Const strVer As String = "0.31"

#008

#009 Public Sub GeoDrawMain()

#010 '主程序模塊,單擊按鈕后彈出

#011     frmMain.Show vbModal

#012 End Sub

 

行內(nèi)注釋

行內(nèi)注釋的形式是在語句的同一行中加注釋,行內(nèi)注釋應(yīng)該簡單明了,并不要描述顯而易見的事情。行內(nèi)注釋和語句至少應(yīng)該有2個(gè)以上空格??梢栽谡Z句和注釋之間使用多個(gè)Tab使注釋對齊,例如:

Dim iAge As Long            ‘年齡

Dim strName As String       ‘姓名

2.3.       程序版本

建議在模塊注釋中包括作者,修改時(shí)間,版本等信息,例如:

' 模塊名稱:氣壓計(jì)算模塊

' 描述:

' 作者:Mars

' 創(chuàng)建時(shí)間:2004423

' 修改時(shí)間:2005713

' 版本:2.5

此類注釋應(yīng)該形成自己的風(fēng)格,在所有的工程中保持一致。對于團(tuán)隊(duì)工作和正式開發(fā),應(yīng)該嚴(yán)格要求在模塊注釋中包括這些內(nèi)容。

2.4.       一些基本原則

明確說明作用范圍

在代碼中,對于模塊級的變量,過程,函數(shù),應(yīng)該總是使用“Public”、“Private”等關(guān)鍵字明確說明其范圍。

 

使用有意義的名稱

一定要使用有意義的名稱,而不要使用簡單的A、B、C之類的名稱(循環(huán)變量約定俗成使用i、j等名稱除外)。

 

明確參數(shù)和變量的數(shù)據(jù)類型

在定義過程參數(shù)的時(shí)候,一定要明確指定其數(shù)據(jù)類型和傳遞方式(ByRef或者ByVal),這不僅僅是考慮效率,而是為了方便對這些過程的使用。對于變量定義,也應(yīng)該養(yǎng)成明確說明其數(shù)據(jù)類型的習(xí)慣。

 

模塊內(nèi)的過程排序

模塊內(nèi)部的過程應(yīng)該按照“Public”、“Private”的順序排序,公有的過程在前,私有在后;然后再按照過程名稱字母順序排序。

 

使用常量和枚舉

應(yīng)該盡量使用常量和枚舉,而不要在程序代碼中使用數(shù)字(幻數(shù))。

 

語句的選擇

對于True、False的判斷,使用If語句,對于多種可能的判斷,使用Select語句。對于循環(huán),對于確定循環(huán)次數(shù)的循環(huán),使用For語句,對于不確定循環(huán)次數(shù)的循環(huán),使用Do While語句,盡量對集合使用For Each語句。

 

Goto語句

除了錯(cuò)誤處理,不要使用Goto語句。

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
對C#.NET編程規(guī)范的個(gè)人見解
知名半導(dǎo)體MCU大廠軟件開發(fā)C代碼規(guī)范
編程入門網(wǎng)-VB編程的七個(gè)優(yōu)良習(xí)慣
嵌入式軟件開發(fā)編程規(guī)范你了解嗎?小心吃大虧
delphi代碼標(biāo)準(zhǔn)文檔
FPGA代碼編寫之編寫要點(diǎn)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服