国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

VB.net 編碼規范

2024-07-10 13:02:27
字體:
來源:轉載
供稿:網友


vb.net 編碼規范
作者: ninputer   www.aspcool.com
  在開發中保持良好的編碼規范是十分重要的。我所采用的新的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#。僅供大家參考。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 连城县| 灵丘县| 文化| 毕节市| 安阳市| 星座| 怀宁县| 射洪县| 兴文县| 盈江县| 宁陵县| 溧阳市| 汝阳县| 达拉特旗| 宁远县| 珲春市| 平罗县| 博罗县| 历史| 长阳| 金塔县| 恭城| 赫章县| 赤壁市| 会东县| 海南省| 平昌县| 临沭县| 通道| 梨树县| 钟山县| 科技| 卢龙县| 凉城县| 句容市| 延寿县| 马龙县| 铁岭市| 永靖县| 东宁县| 德阳市|