好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

vb编程规范(匈牙利命名法).doc

9页
  • 卖家[上传人]:人***
  • 文档编号:379906927
  • 上传时间:2022-10-07
  • 文档格式:DOC
  • 文档大小:96KB
  • / 9 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • Visual Basic编程规范编程规范注重于程序的物理结构和外观,而不是程序的逻辑结构使用统一编码约定集合的主要原因,是使应用程序的结构和编码风格标准化,使之容易阅读、容易理解而且容易维护1.  Visual Basic IDE(集成开发环境)设置        必须打开设置选项的“要求变量声明”,“对齐控件到网格”,“自动缩进”开关 Tab的宽度统一为4个空格,网格单位一律设为:width 60 height 602.  命名约定在任何时候,不能使用中文及全角字符,只允许使用英文字母、下划线和数字2.1工程的命名        ActiveX控件和DLL工程命名格式为(.Lib),EXE工程直接命名,如果是通用组件工程,直接命名,如果是项目或产品工程,则使用项目或产品缩写作为前缀如:XWY.Lib        工程命名不必缩写,为了表达意思和用途,可以尽可能地长,而且命名格式采用 (名词) 、 (形容词 + 名词) 或 (名词 + 动作的名词形式)如: StockOperationLib或StockLib2.2变量的命名程序中的变量遵循匈牙利表示法,即“前缀+变量含义”,变量的含义为一个或多个英文单词,每个单词的第一个字母大写。

      变量前缀为三个小写字母示意其类型,所需添加的前缀遵循微软在MSDN中的建议列表如下:   对于一般的计数器变量定义,应该尽可能地简单,如:Dim i As IntegerFor i = 0 to 100Next i范围标识:全局变量加前缀’g_’ ,例如:g_strFdbm;模块级变量加前缀:’m_’ 例如:m_strFdbm;过程级变量不加前缀       全局变量和模块级变量应该尽量使用全名称,不推荐使用缩写,如:gEntityManager常见的变量类型和控件类型前缀如下表所示:表一 变量类型前缀列表数据类型前缀示例Boolean bln blnLoggedIn Currency cur curSalary Control ctl ctlLastControl Double dbl dblMiles ErrObject err errLastError Single sng sngYears Handle hwd hwdPicture Long lng lngOnHand Object obj objUserTable Integer int intAge String str strName User-defined type udt udtEmployee Variant (including Dates) vnt vntDateHired Array arr arrEmployees  表二 数据库对象前缀列表数据库对象前缀示例Databasedbs dbsAccounts Recordsetrec recForecast commandcmd cmdQuery connectioncon conSql 2.3 控件的命名       控件命名一律使用控件类型缩写+控件用途的命名方式,缩写规则同变量命名,以下是常用控件的类型缩写,应该严格遵守。

      如果使用了新的控件(包括升级版本),必须向公司提出申请,经评审通过后,协同一致其类型名称缩写,再进行使用 表三 控件类型前缀列表控件前缀举例ADO Data ado adoBiblio Animated button ani aniMailBox Checkbox chk chkPrint Combo box cbo cboTitle Command button cmd cmdCancel Communications com comFax Data dat datBiblio Data-bound combo box dbcbo dbcboLanguage Data-bound grid dbgrd dbgrdQueryResult Common dialog control dlg dlgCommon Control ctr ctrCurrent Directory list box dir dirSource Drive list box drv drvTarget DTPicker  DropDateControl dt  EnumEditBox enm  File list box fil filSource Frame fra fraLanguage Form frm frmMain Vfgrid grd  Graph gra  Group push button gpb gpbChannel Hierarchical flexgrid flex flexOrders Horizontal scroll bar hsb hsbVolume Image img imgIcon Image ImageList img  Label lbl lblHelpMessage Line lin linVertical List box lst lstResultCodes ListView lv  MCI mci mciVideo MDI child form mdi mdiContact Menu control mnu mnuFileOpen NumEditBox nm  OLE container ole olePhoto Option button opt optSpanish Panel pnl pnlSettings Picture box pic PicDiskSpace Picture clip clp ClpToolbar ProgressBar prg prgLoadFile Report rpt  Scroll bar sbr  Shape shp ShpCircle Slider sld sldScale Spin spn  StatusBar st  ToolBar tb  Text box txt TxtAddress Timer tmr TmrAlarm TreeView tv tvFlbm Vertical scroll bar vsb vsbRate  2.4 函数和过程的命名       此处函数包括sub和function,以下这两种过程统称为函数。

             函数表示的是一个动作,所以它的结构应该是 动词+名词,动词必须小写,后面的名称首字母大写,如:getMaterialCode、updateGrid、readOrder       函数命名尽量不要使用缩写,而且它的名称应该使人一目了然,能够从名称就知道这个函数的功能,不要使用无意义的函数名称,如:getCode,update,readData       当函数名称不足以表达其功能时,使用在函数头部加上让调用者足够明白的注释       参数的命名:参数命名的原则是全部小写,如果参数包括两个或以上的单词时,首单词字母小写,其它单词首字母大写,如showCol、isUpdate2.5 常量的命名       常量的命名应该全部大写,使用‘_’作为单词间的分隔符,单词尽量使用全名称,如:        Public Const MSG_EMPTY_ROW As String = “有空行存在!”       解释:(1)  对一些常用词应该使用简写,如MSG(2)  使用Public来声明常量(3)  对常量的声明必须带上类型,如上面的As String2.6 属性的命名       属性的命名采用首字母大写的原则,如ItemCount.Item 2.7 类、窗体和模块的命名       类、窗体和模块命名采用前缀+功能名词,并且单词首字母大写。

      类的前缀为(Cls),如:ClsSystemConfig;窗体前缀Frm,如:FrmList;模块前缀为Mod,如ModList以上三种命名在一个项目内必须保持唯一2.8  自定义控件的命名       自定义控件的命名:名词 + Ctrl 如:EditGridCtrl3.     书写格式约定3.1 定义        定义的代码块应该放在一起,不要在中间定义变量,变量的定义应该顶行进齐,不能缩进如下: Dim i As IntegerDim j As IntegerDim em As EntityManager3.2 空行        空行是区分代码块与块的间隔,在函数之间必须加上空行(两行左右),而函数内部,变量声明块和实现块(实现块指除变量声明外的其它代码)要使用空行来间隔(一行),实现块的内部,通过空行来标识一个功能段,如: Private Sub Check(Order As NYSaleBackLib.Order) '减少库存 Dim objStockItem As NYStockLib.StockItemDim objStock As NYStockLib.StockDim i As Integer Set objStock = CreateStock() For i = 0 To Order.ItemCount - 1  Set objStockItem = Order.item(i)  '减少库存         Call objStock.ReduceItem(objStockItem, True)     Next i            Set objStock = Nothing    End Sub (注意:不要使用过多的空行,空行太多影响代码阅读!) 3.3 缩进        缩进必须严格执行,变量声明块不缩进,实现块必须保证全部缩进(即不可能有实现块是行首对齐的)。

             每个单位的代码缩进为一个TAB,非相关代码留一行空白的间隔注:Goto标签不缩进       对于基本的控制结构,必须要有缩进,如:IF、DO、WITH、FOR、OPEN、SELECT块,缩进示例如下:Private Function GetMax(Byref lngArray() As Long) As Long  Dim lngMax As Long  Dim lngCount as long        GetMax=0  For lngCount =0 to Ubound(lngArray)    If lngArray (lngCount)>lngMax Then              lngMax=lngArray(lngCoun。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.