- Login
帳號:
密碼:
ASP MENU
線上教學
   ASP 教學
VB.NET 教學
JSP 教學
JAVA 教學
完整 ASP 教學
程式下載
   ASP 程式下載
提供 ASP 程式
程式量身訂做
   收費標準
填寫需求表
討論交流專區
   程式討論區
電腦資訊交流
工作機會
   社會人就職情報
汎亞人力銀行
大台中人力銀行
大高雄人力銀行
相關連結
   ASP 虛擬空間
ASP 相關網站
聯絡我們
   意見信箱
加入會員程式討論區線上購物回首頁
VB.NET 教學
VB.net 編碼規範
在開發中保持良好的編碼規範是十分重要的。我所採用的新的VB.net編碼規範,是一種被證明能明顯改善代碼可讀性,並有助於代碼管理、分類的編碼規範。採用這種編碼規範,能避免如匈牙利命名法帶來的繁長前綴,便於記憶變量的用途。下面的介紹這種編碼規範。
一、類型級單位的命名
1、類。
以Class聲明的類,都必須以名詞或名詞短語命名,體現類的作用。如:
Class Indicator
當類是一個特性(Attribute)時,以Attribute結尾,當類是一個異常(Exception)時,以Exception結尾:
Class ColorSetException
Class CauseExceptionAttribute
當類只需有一個對象實例(全局對象,比如Application等),必須以Class結尾,如
Class ScreenClass
Class SystemClass
當類只用於作為其他類的基類,根據情況,以Base結尾:
MustInherit Class IndicatorBase
如果定義的類是一個窗體,那麼名字的後面必須加後綴Form,如果是Web窗體,必須加後綴Page:
Class PrintForm : Inherits Form '* Windows窗體
Class StartPage : Inherits Page '* Web窗體
2、枚舉和結構
同樣必須以名詞或名詞短語命名。最好體現枚舉或結構的特點,如:
Enum ColorButtons '以復數結尾,表明這是一個枚舉
Structure CustomerInfoRecord '以Record結尾,表明這是一個結構體
3、委派類型
普通的委派類型以描述動作的名詞命名,以體現委派類型實例的功能:
Delegate Sub DataSeeker (ByVal SeekString As String)
用於事件處理的委派類型,必須以EventHandler結尾,如:
Delegate Sub DataChangedEventHandler (ByVal Sender As Object, ByVal e As DataChangedEventArgs)
4、接口
與其他類型不同,接口必須要由I作為前綴,並用形容詞命名,突出表現實現接口的類將具有什麼能力:
Interface ISortable
5、模塊
模塊不是類型,他的名稱除了必須以名詞命名外,必須加以後綴Module:
Module SharedFunctionsModule
上述所有規則的共同特點是,每個組成名稱的詞語都必須是大寫開頭,禁止完全大寫或小寫的名稱。
二、方法和屬性的命名
1、方法
無論是函數還是子程序,方法都必須以動詞或動詞短語命名。無需區分函數和子程序,也無需指明返回類型。
Sub Open(ByVal CommandString As String)
Function SetCopyNumber(ByVal CopyNumber As Integer)
參數需要指明ByVal還是ByRef,這一點寫起來會讓程序邊長,但非常必要。如果沒有特別情況,都使用ByVal。參數的命名方法,參考後面“變量的命名方法”。需要重載的方法,一般不寫Overloads,根據需要編寫重載的方法。
2、屬性
原則上,字段(Field)是不能公開的,要訪問字段的值,一般使用屬性。屬性以簡潔清晰的名詞命名:
Property Concentration As Single
Property Customer As CustomerTypes
3、事件
事件是特殊的屬性,只能在事件處理上下文中使用。命名的原則一般是動詞或動詞的分詞,通過時態表明事件發生的時間:
Event Click As ClickEventHandler
Event ColorChanged As ColorChangedEventHangler
三、變量和常數
常數以表明常數意義的名詞命名,一般不區分常數的類型:
Const DefaultConcentration As Single = 0.01
在嚴格要求的代碼中,常數以c_開頭,如c_DefaultConcentration,但最好不要用它,它會帶來輸入困難。
普通類型的變量,只要用有意義的名字命名即可,不可使用簡稱和無意義的名稱諸如A,x1等,下面給出了良好的例子:
Dim Index As Integer
Dim NextMonthExpenditure As Decimal
Dim CustomerName As String
不能起太長的名字,應該盡量簡潔,如下面的例子:
Dim VariableUsedToStoreSystemInformation As String '* 錯誤,太複雜了
Dim SystemInformation As String '* 正確,簡單明了
Dim sysInfo As String '* 錯誤,過於簡單
特殊情況可以考慮一個字母的變量:
Dim g As Graphic
對於控件,應該指明控件的類型,方法是直接在變量後面加以類名:
Friend WithEvents NextPageButton As Button '* 按鈕
Friend WithEvents ColorChoicerPanel As Panel '* 面版
Friend WithEvents CardFileOpenDialog As FileOpenDialog '* 文件打開對話框
等等,無需規定某種類型的變量的前綴,只需把類型寫在後面就行了,試對比下列代碼:
btnCancel.Text = "&Cancel"
CancelButton.Text = "&Cancel"
顯然後者更能使閱讀者明白變量的類型是一個按鈕。
四、標籤
標籤就是用於Goto跳轉的代碼標識,由於Goto並不推薦使用,所以標籤的使用也比較苛刻。標籤必須全部大寫,中間的空格用下劃線_代替,而且應該以_開頭,比如:
_A_LABEL_EXAMPLE:
如此定義標籤是為了與其他代碼元素充分區別。
五、名字空間
通常,一個工程使用一個名字空間,通常不需要用Namespace語句,而是在工程選項的“Root Namespace”中指定,使用根名字空間可以使代碼更加整齊,容易修改,這一點是VB十足的優點。名字空間的語法是:
公司名.產品名[.組件名的復數]
如:
Namespace Ninputer.VirtualScreen
Namespace Ninputer.CardEditor.CustomeControls
隨便起一個名字空間的名字絕對不是一個好主意,一定要遵守上述規定。
六、注釋
注釋的規則繁多,這媔提到其中一點:正常的注釋以'*開頭,單獨的'只用來注釋暫時不用的代碼
'* 這是普通的注釋
'* 這段代碼在調試正確後加入
'If UseHighSpeed(g) = True Then ....
這樣能夠方便的採用代碼注釋工具控制代碼的使用。
以上已經簡單的介紹了我使用的VB.net代碼規範,這個代碼規範也適用於C#。僅供大家參考。



頂端
本網頁最佳瀏覽模式為:瀏覽器 IE4.0 以上    解析度: 800 x 600
Copyright © 2000-2017 COOLASP All Rights Reserved