一、 注释规范 A. 注释标准: l 功能注释 功能注释是指为了对代码本身进行解释说明而进行的注释。 注释符采用“’”作为统一的注释符。 1.行内注释 采用注释符号 “’” 例: Dim intFileNo As Integer ’ファイル番号取得用 2.整行(包括多行)注释 采用注释块开始与块结束标志 36
l 修订注释 ’*************** Modify Start *************** ’ 修订原因: ’ 修订履历: ’ 修订者 修订日期 ’ 原始代码: ’ Case 5 To 8 ’ …… Case 4 To 8 ’*************** End ***************
D. 注释的方法: 对代码行可以在行尾加注释(不能违反行宽的要求); 对单行代码的注释可以在上一行以“’”的形式添加简单注释; 对整段代码的注释放在代码段之前; 注释符统一采用“’”。
变量范围做前缀 范围 前缀 例子 全局变量 g gStrUserName 模块级 m mStrUserName 过程级 无 StrUserName 数组前缀: a 类型前缀: 数据类型 前缀 例子 Boolean Bln BlnFound Byte Byt BytRasterDate Currency Cur CurBalance Date Dtm DtmBeginDate Double Dbl DblFee Integer Int IntQty Long Lng LngVcID Single Sng SngAverage String Str StrItemId Object Obj ObjRmtsvr ADODB.Recordset Rst RstItem ADODB.Connection Cnn cnnNewsPaper ADODB.Command Cmm CmmAddCustomer Variant Vnt VntCheck 自定义类型 Udt UdtUserInfo 控件类型命名前缀 控件类型 前缀 例子 ADO Data ado AdoBiblio Check box chk ChkReadOnly Combo box, drop-down list box cbo CboEnglish Command button cmd CmdExit Common dialog dlg DlgFileOpen Data-bound combo box dbcbo DbcboLanguage Data-bound grid dbgrd DbgrdQueryResult Data-bound list box dblst DblstJobType Data combo dbc DbcAuthor Data grid dgd DgdTitles Data list dbl DblPublisher Directory list box dir DirSource Drive list box drv DrvTarget File list box fil FilSource Form frm FrmEntry Frame fra FraLanguage Graph gra GraRevenue Grid grd GrdPrices Horizontal scroll bar hsb HsbVolume Image img ImgIcon Image combo imgcbo ImgcboProduct ImageList ils IlsAllIcons Label lbl LblHelpMessage Line lin LinVertical List box lst LstPolicyCodes ListView lvw LvwHeadings Menu mnu MnuFileOpen Month view mvw MvwPeriod MS Chart ch ChSalesbyRegion MS Flex grid msg MsgClients MS Tab mst MstFirst Option button opt OptGender Picture box pic PicVGA ProgressBar prg PrgLoadFile Remote Data rd RdTitles Slider sld SldScale Spin spn SpnPages StatusBar sta StaDateTime SysInfo sys SysMonitor TabStrip tab TabOptions Text box txt TxtLastName Timer tmr TmrAlarm Toolbar tlb TlbActions TreeView tre TreOrganization UpDown upd UpdDirection Vertical scroll bar vsb VsbRate 自行开发ActiveX控件的前缀根据具体项目的设计时规定。
D. 标签 标签就是用于Goto跳转的代码标识,由于Goto并不推荐使用,所以标签的使用也比较苛刻。标签必须全部大写,中间的空格用下划线_代替,而且应该以_开头,比如: _A_LABEL_EXAMPLE: 如此定义标签是为了与其他代码元素充分区别。
E.方法 无论是函数还是子程序,方法都必须以动词或动词短语命名。无需区分函数和子程序,也无需指明返回类型。 Sub Open(ByVal StrCommandString As String) Function SetCopyNumber(ByVal IntCopyNumber As Integer) as Integer 参数需要指明ByVal还是ByRef,这一点写起来会让程序变长,但非常必要。如果没有特别情况,都使用ByVal。参数的命名方法,参考 “变量的命名方法”。
三、 书写格式规范 A. 程序的书写顺序 该构件的概要注释说明 变量声明 过程声明 代码段1 代码段2 …… B. 大小写 变量名范围前缀用小写,每个单词第一个字母用大写 函数、过程、对象名也要求每个组成单词字首大写 C. 缩进 统一开发环境,设定VisualBasic设计器的开发环境选项,定义Tab宽度为4。代码缩进时,先选中要缩进的代码块,然后使用快捷键是Tab(右移)和Shift+Tab(左移);如果手工输入空格完成缩进,以4个空格为单位。 在If语句后缩进; 在Else语句后缩进 在Select Case语句后缩进 在Case语句后缩进 在Do语句后缩进 在For语句后缩进 已经用行接续符分割的语句的各个行要缩进 在With语句后缩进。 对从属于行标注的代码进行缩进。
D. 空格 运算符前后都要空格,包括:+,-,*,/,^,=,>,>=,<,<=,<>,NOT,AND,OR等; E. 空行 变量声明部分和代码语句间的分隔; 在执行统一任务的各个语句组之间插入一个空行。好的代码应由按逻辑顺序排列的进程或相关语句组构成。 F. 页宽 对较长语句,如API声明等,在代码窗体可视范围内给予换行,不要使别人必须通过滚动窗口才能查看到完整的代码,单行代码长度不超过95列。 使用“& _ ”换行符。 G. 其他 在项目组内部,根据需要统一VisualBasic开发环境参数。
五、 建议性规范 l 有的时候可能需要违背好的编程原则,或者使用了某些不正规的方法,遇到这种情况时,必须用详细的注释来说明在做什么和为什么要这样做。 技巧性特别高的代码段,一定要加详细的注释,不要让其他开发人员花很长时间来研究一个高技巧但不易理解的程序段。 l 对注释进行缩进,使之与后随的语句对齐。 注释通常位于它们要说明的代码的前面。为了从视觉上突出注释与它的代码之间的关系,请将注释缩进,使之与代码处于同一个层次上
六、 其他 对文档的理解产生的歧义由引用此文档的项目的项目负责人统一解释
posted on
2005-05-16 22:11wddavid 阅读(
...) 评论(
...)
编辑收藏
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。
1、repeated column width is largerthan paper width:
这个看这段话应该是很好理解的。比如做的模板页面宽度只能放
这个问题我实在是为整个 springsource 的员工蒙羞
如果大家使用 spring 控制事务,使用 Open Session In View 模式,
com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.
简单模拟实现数据库连接池
实例1:
package com.bijian.thread;
public class DB {
//private static final int MAX_COUNT = 10;
private static final DB instance = new DB();
private int count = 0;
private i
using System;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.Xml.Serialization;
using System.IO;
namespace WindowsFormsApplication1
{
Configuring Spring and JTA without full Java EE
http://spring.io/blog/2011/08/15/configuring-spring-and-jta-without-full-java-ee/
Spring doc -Transaction Management
http://docs.spring.io/spri