C#编码命名规则
1. 基本规则第一个字母必须大写,并且后面的并发连结词的第一个字母均为大写例:GeneralManager、SmallDictionary、StringUtil
2. 接口命名规则接口名称前加“I_”interface I_Compare{ int compare();}
类的命名.类名添加cls前缀public class clsTextBox{ public void DataBind() { }}
WebServer的命名.类名添加ws前缀public class wsTextBox{ public void DataBind() { }}
方法、属性的命名.使用Pascal大小写形式,一般将其命名为动宾短语.ShowDialog()CreateFile()
变量、参数使用Camel 大小写形式例:int totalCount
常量全部大写,单词之间以 “_” 分隔例:USER_PASSWORD
代码的缩进用Tab,而不要用space
其他代码命名规则l 局部变量的名称要有意义.不要用x,y,z等等(循环变量除外)l 所有的成员变量声明在类的顶端,用一个换行把它和方法分开l 文件名要能反应类的内容,最好是和类同名,一个文件中一个类.l 大括号"{"要新起一行.public class AuthorAttribute : Attribute{}l switch语句一定要有default来处理意外情况l 同程序外部连接(数据库、接口、文件等)一定要捕获任何类型的异常(try)给出友好的消息给用户,必要时用日志记录错误的细节,包括发生的时间,和相关方法,类名等。不要“捕捉了异常却什么也不做”l 始终使用"{ }"包含if/else下的语句,即使只有一条语句l 把引用的系统的namespace和自定义或第三方的分开l 自定义的属性以Attribute结尾public class AuthorAttribute : Attribute{} l 自定义的异常以Exception结尾public class AppException : Exception{}l 注释需和代码对齐l 用一个空行来分开代码的逻辑分组l 花括弧 ( {} ) 需和括号外的代码对齐l 不在代码中使用具体的路径和驱动器名,使用相对路径,并使路径可编程
数据库命名规则l 表:e—业务表中相对独立的实体表(例如:课程资源表……)r—业务中产生的关联表(例如:选课表……)b—系统中的基本表(例如:类型表、民族、地区……)l 视图: v_<ViewName> 首字母大写l 存储过程:sp_<SpName> 首字母大写l 触发器:t _<TriggerName> 首字母大写l 函数过程:fn_<FunctionName> 首字母大写l 列名:一般第一列名为ID、主键、标识递增其他列名尽可能用英文单词或英文缩写,如英文过长(超过6位)或过于生僻可用汉语拼音的首字母。
控件命名:Control type prefix ExampleButton btn btnOKGrid grd grdPrices 3D Panel pnl pnlGroup ADO Data ado adoBiblio Animated button ani aniMailBox Check box chk chkReadOnly Combo box cbo cboEnglishDropdown list box ddl ddlUserCommand 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 Hierarchical flexgrid flex flexOrders Horizontal scroll bar hsb hsbVolume Image img imgIcon Image combo imgcbo imgcboProduct ImageList ils ilsAllIcons Label lbl lblHelpMessage Lightweight check box lwchk lwchkArchive Lightweight combo box lwcbo lwcboGerman Lightweight command button lwcmd lwcmdRemove Lightweight frame lwfra lwfraSaveOptions Lightweight horizontal scroll bar lwhsb lwhsbVolume Lightweight list box lwlst lwlstCostCenters Lightweight option button lwopt lwoptIncomeLevel Lightweight text box lwtxt lwoptStreet Lightweight vertical scroll bar lwvsb lwvsbYear Line lin linVertical List box lst lstPolicyCodes ListView lvw lvwHeadings MAPI message mpm mpmSentMessage MAPI session mps mpsSession MCI mci mciVideo Menu mnu mnuFileOpen Month view mvw mvwPeriod MS Chart ch chSalesbyRegion MS Flex grid msg msgClients MS Tab mst mstFirst OLE container ole oleWorksheet Option button opt optGender Picture box pic picVGA Picture clip clp clpToolbar ProgressBar prg prgLoadFile Remote Data rd rdTitles RichTextBox rtf rtfReport Shape shp shpCircle 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 ◆注记Pascal 大小写形式——所有单词第一个字母大写,其他字母小写。Camel 大小写形式——除了第一个单词,所有单词第一个字母大写,其他字母小写。详细:http://book115.com/a/_Netjishu/C_jichu/2011/1011/897.html
1. 基本规则第一个字母必须大写,并且后面的并发连结词的第一个字母均为大写例:GeneralManager、SmallDictionary、StringUtil
2. 接口命名规则接口名称前加“I_”interface I_Compare{ int compare();}
类的命名.类名添加cls前缀public class clsTextBox{ public void DataBind() { }}
WebServer的命名.类名添加ws前缀public class wsTextBox{ public void DataBind() { }}
方法、属性的命名.使用Pascal大小写形式,一般将其命名为动宾短语.ShowDialog()CreateFile()
变量、参数使用Camel 大小写形式例:int totalCount
常量全部大写,单词之间以 “_” 分隔例:USER_PASSWORD
代码的缩进用Tab,而不要用space
其他代码命名规则l 局部变量的名称要有意义.不要用x,y,z等等(循环变量除外)l 所有的成员变量声明在类的顶端,用一个换行把它和方法分开l 文件名要能反应类的内容,最好是和类同名,一个文件中一个类.l 大括号"{"要新起一行.public class AuthorAttribute : Attribute{}l switch语句一定要有default来处理意外情况l 同程序外部连接(数据库、接口、文件等)一定要捕获任何类型的异常(try)给出友好的消息给用户,必要时用日志记录错误的细节,包括发生的时间,和相关方法,类名等。不要“捕捉了异常却什么也不做”l 始终使用"{ }"包含if/else下的语句,即使只有一条语句l 把引用的系统的namespace和自定义或第三方的分开l 自定义的属性以Attribute结尾public class AuthorAttribute : Attribute{} l 自定义的异常以Exception结尾public class AppException : Exception{}l 注释需和代码对齐l 用一个空行来分开代码的逻辑分组l 花括弧 ( {} ) 需和括号外的代码对齐l 不在代码中使用具体的路径和驱动器名,使用相对路径,并使路径可编程
数据库命名规则l 表:e—业务表中相对独立的实体表(例如:课程资源表……)r—业务中产生的关联表(例如:选课表……)b—系统中的基本表(例如:类型表、民族、地区……)l 视图: v_<ViewName> 首字母大写l 存储过程:sp_<SpName> 首字母大写l 触发器:t _<TriggerName> 首字母大写l 函数过程:fn_<FunctionName> 首字母大写l 列名:一般第一列名为ID、主键、标识递增其他列名尽可能用英文单词或英文缩写,如英文过长(超过6位)或过于生僻可用汉语拼音的首字母。
控件命名:Control type prefix ExampleButton btn btnOKGrid grd grdPrices 3D Panel pnl pnlGroup ADO Data ado adoBiblio Animated button ani aniMailBox Check box chk chkReadOnly Combo box cbo cboEnglishDropdown list box ddl ddlUserCommand 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 Hierarchical flexgrid flex flexOrders Horizontal scroll bar hsb hsbVolume Image img imgIcon Image combo imgcbo imgcboProduct ImageList ils ilsAllIcons Label lbl lblHelpMessage Lightweight check box lwchk lwchkArchive Lightweight combo box lwcbo lwcboGerman Lightweight command button lwcmd lwcmdRemove Lightweight frame lwfra lwfraSaveOptions Lightweight horizontal scroll bar lwhsb lwhsbVolume Lightweight list box lwlst lwlstCostCenters Lightweight option button lwopt lwoptIncomeLevel Lightweight text box lwtxt lwoptStreet Lightweight vertical scroll bar lwvsb lwvsbYear Line lin linVertical List box lst lstPolicyCodes ListView lvw lvwHeadings MAPI message mpm mpmSentMessage MAPI session mps mpsSession MCI mci mciVideo Menu mnu mnuFileOpen Month view mvw mvwPeriod MS Chart ch chSalesbyRegion MS Flex grid msg msgClients MS Tab mst mstFirst OLE container ole oleWorksheet Option button opt optGender Picture box pic picVGA Picture clip clp clpToolbar ProgressBar prg prgLoadFile Remote Data rd rdTitles RichTextBox rtf rtfReport Shape shp shpCircle 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 ◆注记Pascal 大小写形式——所有单词第一个字母大写,其他字母小写。Camel 大小写形式——除了第一个单词,所有单词第一个字母大写,其他字母小写。详细:http://book115.com/a/_Netjishu/C_jichu/2011/1011/897.html
PictureBox -> pbx
TreeView -> tvw
StatusBar -> stb
基本就是这么个原则了比如自定一个按钮,类/控件名称为 Student
实例名称可定义为 stuZhangSan