编码规范文档教案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
目录 (1)
1.编写目的 (2)
2.程序命名规范 (2)
基本约定 (2)
控件命名规范 (4)
控件命名规范 (6)
自定义控件命名规范 (6)
类型声明 (6)
常量 (7)
类的命名 (7)
抽象类定义 (7)
密封类定义 (8)
方法定义 (8)
虚方法定义 (8)
类的成员定义 (8)
结构定义 (8)
结构成员定义 (9)
接口定义 (9)
接口的方法和成员定义 (9)
自定义异常定义 (9)
注释规范 (9)
1.编写目的
为了使团队中的每一位成员都形成统一的开发约定,特制定本规范文档,在今后的开发过程中,请严格按照此文档约定的规则进行编码。通过此规范,希望可以给各程序员之间起到沟通的桥梁的作用,并增强程序的可读性。
如在使用过程中,碰到本文档中没进行约定的规则,待商议后对该文档进行补充完善。2.程序命名规范
基本约定
●所有的命名名称都必须使用能直接体现具体含义的名字。
不能使用X,Y,Z,等无意义的名称进行定义,除循环变量除外。
●所有的成员变量必须在所有成员方法前面声明,用一个换行把它和方法分开
如:
public class ClsLogin
{
TextBox txtUserName;//
TextBox txtPassWord;//
public Login()
{
}
}
●类文件名的名称必须要能反应类的内容,最好是和类同名,一个文件只写一个类,
文件和文件夹的名称也应该精确地说明它们的用途。
如:
文件名:Login.cs
类名:public class ClsLogin
●大括号"{"要新起一行。
正确编写:
public class ClsLogin
{
}
错误编写:
public class ClsLogin{
}
●switch语句一定要有default来处理意外情况。
●同程序外部连接(如连接数据库、接口、文件等)一定要捕获任何类型的异常(try)
给出友好的消息给用户,必要时用日志记录错误的细节,包括发生的时间,和相关
方法,类名等。
●始终使用"{ }"包含if/else下的语句,即使只有一条语句。
正确编写:
if (true)
{
//语句。
}
错误编写:
if (true)
//语句。
●把引用的系统的namespace和自定义或第三方的分开。
using System;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using Space;
●不同函数或方法之间,需要用空行来分开。
如:
public class ClsLogin
{
public Login()
{
}
Public ~Login()
{
}
}
●不在代码中使用具体的路径和驱动器名,必须使用相对路径。
●代码的缩进用Tab,而不要用space。
●使用某个控件的值时,尽量命名局部变量。
public string GetTitle()
{
string StrTitle=lblTitle.Text;
StrTitle += StrTitle;
return StrTitle;
}
●一个方法只完成一个任务。不要把多个任务组合到一个方法中。
避免使用大文件。如果一个文件里的代码超过300~400行,必须考虑将代码分开到不同类中。
控件命名规范
以下控件为常用的控件命名规范,按英文字母进行升序排列。在此列表中未定义的控件,将后期补充完善。
控件类型命名前缀举例
3D Panel pnl pnlGroup
ADO Data ado adoBiblio
Animated button ani aniMailBox
Button btn btnOK
Check box chk chkReadOnly
Combo box cbo cboEnglish
Dropdown list box ddl ddlUser
Command button cmd cmdExit
Common dialog dlg dlgFileOpen Communications com comFax
Control (used within procedures when the specific type is unknown)
ctr ctrCurrent
Data dat datBiblio
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
Data repeater drp drpLocation
Date picker dtp dtpPublished
Directory list box dir dirSource
Drive list box drv drvTarget
File list box fil filSource
Flat scroll bar fsb fsbMove
Form frm frmEntry
Frame fra fraLanguage
Gauge gau gauStatus
Graph gra graRevenue
Grid grd grdPrices
GridView grv
Hierarchical flexgrid flex flexOrders
Horizontal scroll bar hsb hsbVolume
ImageButton ibtn ImageButton
Image img imgIcon
Image combo imgcbo imgcboProduct