VB編程的八個優良習慣
1、"&"替換"+"
2.變數命名大小寫,語句錯落有秩,原始碼維護方面
3.請養成以下的「對象命名約定」良好習慣
4.在簡單的選擇條件情況下,使用IIf()函數
5.盡量使用Debug.Print進行調試
6.在重複對某一物件的屬性進行修改時,盡量使用With....EndWith
7.MsgBox中盡量使用訊息圖標,這樣程式比較有規範
8.在可能的情況下使用枚舉
1、"&"替換"+"
在許多人的程式語言中,用“+”來連接字串,這樣容易導致歧義。良好的習慣是用「&」來連接字串.
不正確:
DimsMessageAsString
sMessage="1"+"2"
正確:
DimsMessageAsString
sMessage="1"&"2"
注意:"&"的後面有個空格
2.變數命名大小寫,語句錯落有秩,原始碼維護方面
下面大家比較一下以下兩段程式碼:
讀懂難度很高的程式碼:
DimSNAMEAsString
DimNTURNAsInteger
IfNTURN=0Then
IfSNAME="vbeden"Then
DoWhileNTURN<4
NTURN=NTURN+1
Loop
EndIf
EndIf
容易讀懂的程式碼:
DimsNameAsString
DimnTurnAsInteger
IfnTurn=0Then
IfsName="vbeden"Then
DoWhilenTurn<4
nTurn=nTurn+1
Loop
EndIf
EndIf
[返回索引]
3.請養成以下的「對象命名約定」良好習慣
推薦使用的控制前綴
控制項類型前綴例子
3DPanelpnlpnlGroup
ADODataadoadoBiblio
AnimatedbuttonanianiMailBox
CheckboxchkchkReadOnly
Combobox,drop-downlistboxcbocboEnglish
CommandbuttoncmdcmdExit
CommondialogdlgdlgFileOpen
CommunicationscomcomFax
Control(當特定類型未知時,過程中所使用的)ctrctrCurrent
DatadatdatBiblio
Data-boundcomboboxdbcbodbcboLanguage
Data-boundgriddbgrddbgrdQueryResult
Data-boundlistboxdblstdblstJobType
DatacombodbcdbcAuthor
DatagriddgddgdTitles
DatalistdbldblPublisher
DatarepeaterdrpdrpLocation
DatepickerdtpdtpPublished
DirectorylistboxdirdirSource
DrivelistboxdrvdrvTarget
FilelistboxfilfilSource
FlatscrollbarfsbfsbMove
FormfrmfrmEntry
FramefrafraLanguage
GaugegaugauStatus
GraphgragraRevenue
GridgrdgrdPrices
HierarchicalflexgridflexflexOrders
HorizontalscrollbarhsbhsbVolume
ImageimgimgIcon
ImagecomboimgcboimgcboProduct
ImageListilsilsAllIcons
LabellbllblHelpMessage
LightweightcheckboxlwchklwchkArchive
LightweightcomboboxlwcbolwcboGerman
LightweightcommandbuttonlwcmdlwcmdRemove
LightweightframelwfralwfraSaveOptions
LightweighthorizontalscrollbarlwhsblwhsbVolume
LightweightlistboxlwlstlwlstCostCenters
LightweightoptionbuttonlwoptlwoptIncomeLevel
LightweighttextboxlwtxtlwoptStreet
LightweightverticalscrollbarlwvsblwvsbYear
LinelinlinVertical
ListboxlstlstPolicyCodes
ListViewlvwlvwHeadings
MAPImessagempmmpmSentMessage
MAPIsessionmpsmpsSession
MCImcimciVideo
MenumnumnuFileOpen
MonthviewmvwmvwPeriod
MSChartchchSalesbyRegion
MSFlexgridmsgmsgClients
MSTabmstmstFirst
OLEcontaineroleoleWorksheet
OptionbuttonoptoptGender
PictureboxpicpicVGA
PictureclipclpclpToolbar
ProgressBarprgprgLoadFile
RemoteDatardrdTitles
RichTextBoxrtfrtfReport
ShapeshpshpCircle
SlidersldsldScale
SpinspnspnPages
StatusBarstastaDateTime
SysInfosyssysMonitor
TabStriptabtabOptions
TextboxtxttxtLastName
TimertmrtmrAlarm
ToolbartlbtlbActions
TreeViewtretreOrganization
UpDownupdupdDirection
VerticalscrollbarvsbvsbRate
-------------------------------------------------- ------------------------------
建議使用的資料存取對象(DAO)的前綴
用下列前綴來指示資料存取對象
資料庫物件前綴例子
ContainerconconReports
DatabasedbdbAccounts
DBEnginedbedbeJet
DocumentdocdocSalesReport
FieldfldfldAddress
GroupgrpgrpFinance
IndexixidxAge
ParameterprmprmJobCode
QueryDefqryqrySalesByRegion
RecordsetrecrecForecast
RelationrelrelEmployeeDept
TableDeftbdtbdCustomers
UserusrusrNew
WorkspacewspwspMine
-------------------------------------------------- ------------------------------
應用程式經常使用許多選單控件,對於這些控件具備一組唯一的命名約定很實用。除了最前面"mnu"標記以外,選單控制項的前綴應該被擴展:對每一層嵌套增加一個附加前綴,將最終的選單的標題放在名稱字串的最後。下表列出了一些例子。
推薦使用的選單前綴
選單標題序列選單處理器名稱
FileOpenmnuFileOpen
FileSendEmailmnuFileSendEmail
FileSendFaxmnuFileSendFax
FormatCharactermnuFormatCharacter
HelpContentsmnuHelpContents
當使用這種命名約定時,一個特定的選單組的所有成員一個接一個地列在VisualBasic的「屬性」視窗中。而且,選單控制項的名字清楚地表示出它們所屬的選單項目。
為其它控制項選擇前綴
對於上面沒有列出的控件,應該用唯一的由兩個或三個字元組成的前綴使它們標準化,以保持一致性。只有當需要澄清時,才使用多於三個字元的前綴。
常數和變數命名約定
除了物件之外,常數和變數也需要良好格式的命名約定。本節列出了VisualBasic支援的常數和變數的建議約定。並且討論標識資料類型和範圍的問題。
變數應該總是被定義在盡可能小的範圍內。全域(Public)變數可以導致極其複雜的狀態機構,並且使一個應用程式的邏輯非常難於理解。全域變數也使程式碼的重用和維護更加困難。
VisualBasic中的變數可以有下列範圍
範圍聲明位置可見位置
過程級過程,子過程或函數過程中的'Private'在聲明它的過程中
模組級窗體或程式碼模組(.frm、.bas)的聲明部分中的'Private'窗體或程式碼模組中的每一個過程
全域程式碼模組(.bas)的聲明部分中的'Public'應用程式中的每一處
在VisualBasic的應用程式中,只有當沒有其它方便途徑在窗體之間共享資料時才使用全域變數。當必須使用全域變數時,在單一模組中聲明它們,並按功能分組。給這個模組一個有意義的名稱,以指明它的作用,如Public.bas。
較好的編碼習慣是盡可能寫出模組化的程式碼。例如,如果應用程式顯示一個對話框,就把要完成這項對話任務所需的所有控制項和程式碼放在單一的窗體中。這有助於將應用程式的程式碼組織在有用的元件中,並減少它運行時的開銷。
1 2下一頁閱讀全文