1、btnMakeAR3.3.1 Win form控件命名规范控件类型前缀例子LabellbllblStartSyncLabelLinklbkButtonbtnTextBoxtxtMainMenumnuCheckBoxchkRadioButtonrdoGroupBoxgrpPictureBoxpicPanelpanDataGridgrdListBoxlstCheckedListBoxchklstCombocboListViewlstvTreeViewtrvTabControltabDateTimerPickerdtpMonthCalendarcldHScrollBarhsbVScrollBarvs
2、bTimertmrSplittersplDomainUpDowndupNumericUpDownnupTrackBartrkProgressBarpgrRichTextBoxrtxtImageListimglstHelpProviderhlpToolTiptlpContextMenuToolBartlbStatusBarstaNotifyIconntiOpenFileDialogofdSaveFileDialogsfdFolderBrowserDialogfbdFontDialogfdgColorDialogcdgPrintDialogpdgPrintPreviewDialogppdPrint
3、PreviewControlppcErrorProvidererpPrintDocumentprdPageSetupDialogpsdCrystalReportViewercrv3.3.2 C#数据组件命名规范数据库对象DataSetdsdsDeptDataTabledtdtDeptDataTableCollectiondtcdtcDeptDataViewdvdvDeptDataRowdrdrDeptDataRowCollectiondrcdrcDeptDataColumndcdcFieldDataColumnCollectiondccdccDeptDataRowViewdrvdrvDeptO
4、leDb Data ProviderOleDbDataAdapteroleadpOleDbConnectionoleconnOleDbCommandolecmdSql Server Data ProviderSqlDataAdaptersqladpSqlConnectionsqlconnSqlCommandsqlcmdOdbc Data ProviderOdbcDataAdapterodbcadpOdbcConnectionodbcconnOdbcCommandodbccmdOracle Data ProviderOracleDataAdapteroraadpOracleConnectiono
5、raconnOracleCommandoracmd3.3.3 C#菜单命名规范应用程序频繁使用许多菜单控件,对于这些控件具备一组唯一的命名约定很实用。除了最前面 mnu 标记以外,菜单控件的前缀应该被扩展:对每一级嵌套增加一个附加前缀,将最终的菜单的标题放在名称字符串的最后。下表列出了一些例子。菜单标题序列菜单处理器名称File OpenmnuFileOpenFile Send EmailmnuFileSendEmailFile Send Fax mnuFileSendFaxFormat CharactermnuFormatCharacterHelp ContentsmnuHelpConten
6、ts当使用这种命名约定时,一个特定的菜单组的所有成员一个接一个地列在 .net 的“属性”窗口中。而且,菜单控件的名字清楚地表示出它们所属的菜单项。3.4 变/常量命名规范应用程序中所有定义的变量、属性、参数等统一采用Camel规则命名,即首字符小写,在为变量取名时应尽可能选取最能说明其含义的单词,切记不能使用中文拼音。例图如下:3.5 方法命名规范方法名的主体应该使用大小写混合形式,并且应该足够长以描述它的作用。而且,方法名应该以一个动词起首。对于频繁使用的或长的项,推荐使用标准缩略语以使名称的长度合理化。一般来说,超过 32 个字符的变量名在 VGA 显示器上读起来就困难了。当使用缩略语时
7、,要确保它们在整个应用程序中的一致性。在一个工程中,如果一会儿使用 Cnt, 一会儿使用 Count,将导致不必要的混淆,具体的方法命名实例如下图:3.6 代码注释规范3.6.1 代码注释约定应用程序中的代码注释起着十分重要的作用,不仅可以使代码看起来整理规范,有助于开发人员后期修改或查看代码,同时也方便其他用户了解具体代码功能。好的代码注释应该遵循以下几点基本规范:1.所有的方法和函数都应该以描述这段代码的功能的一段简明注释开始(方法是干什么)。这种描述不应该包括执行过程细节(它是怎么做的),因为这常常是随时间而变的,而且这种描述会导致不必要的注释维护工作,甚至更糟成为错误的注释。代码本身和
8、必要的嵌入注释将描述实现方法。2.当参数的功能不明显且当过程希望参数在一个特定的范围内时,也应描述传递给过程的参数。被过程改变的函数返回值和全局变量,特别是通过引用参数的那些,也必须在每个过程的起始处描述它们。3.6.2 相关类文件注释规范应用程序中所有的类文件头部都应该有关于该类的具体说明,主要内容包括:1.文件名称(File Name): 此文件的名称2.功能描述(Description):此模块的功能描述与大概流程说明3.创建人(Author):首次创建该文档的用户名4.日期(Create Date):首次创建该文档的具体时间,如2015-09-255.版本(Version):用于区别不
9、同版本的应用程序6.修改记录(Revision History):若档案的所有者改变,则需要有修改人员的名字、修改日期及修改理由。R1: 修改作者: 修改日期: 修改理由: R2: R3: R10 R1007.引用(Using)开发的系统中引用其它系统的dll、对象时,要列出其对应的名称和位置,这样确保在升级文件时不遗漏个别dll文件。U1: dll名称: 具体位置: U2: U1008.分割符:* (收尾都要)3.6.3 方法注释规范应用程序中具体的方法注释应严格按照以下几点执行:1.由于同一个方法可能会有多个开发人员进行编辑,为了更好地维护代码文档,我们建议在每个方法的注释中除了写明该方法
10、的具体功能、参数说明、返回值说明之外,应添加方法的创建人员、创建时间以及相关修改记录。2.所有的方法必须在其定义前增加方法注释。3.方法注释采用 / 形式自动产生XML标签格式的注释。4.方法中有多个参数时,请不要将参数的说明写在同一行,应单独成行,对于有返回值的方法也请写清具体返回的内容。5.以下表格中列出了一些常用的文档注释标记,仅供参考:标记说明备注提供了一种将说明中的文本标记为代码的方法code提供了一种将多行指示为代码的方法example可以指定使用方法或其他库成员的示例。一般情况下,这将涉及到 对可从当前编译环境中获取的异常的引用。include得以引用描述源代码中类型和成员的另一
11、文件中的注释。list用于定义表或定义列表中的标题行。para用于诸如、 或 等标记内,使您得以将结构添加到文本中。param应当用于方法声明的注释中,以描述方法的一个参数。paramref提供了一种指示词为参数的方法。permission得以将成员的访问记入文档。用于添加有关某个类型的信息,从而补充由 得以从文本内指定链接。seealso对可以通过当前编译环境进行调用的成员或字段的引用。应当用于描述类型或类型成员。value得以描述属性。3.6.4 代码行注释1.如果处理某一个功能需要很多行代码实现,并且有很多逻辑结构块,类似此种代码应该在代码开始前添加注释,说明此块代码的处理思路及注意事项
12、等。2.注释从新行增加,与代码开始处左对齐。3.双斜线与注释之间以空格分开。3.6.5变量注释定义变量时应该写清其具体的含义和用途,变量的注释应紧跟在变量之后,双斜线与注释之间以空格分开。3.7其他规范在编写代码时,软件开发人员应时时刻刻保持一个良好的编程习惯,这不仅有助个人编程技术的提高,同时也可以帮助自己或他人阅读代码文档,提高工作效率。以下我们根据日常编程工作中总结了一些编码规范,对于尚未提到或给出的编码规范会不断地完善改进。3.7.1 编程风格1.为了保持更好的阅读习惯,请不要把多个变量声明写在一行中,即一行只声明一个变量,如:String strTest1,strTest2;应写成:
13、String strTest1;String strTest2;2.为了更容易阅读,代码行请不要太长,最好的宽度是屏幕宽度(根据不同的显示分辩率其可见宽度也不同)。请不要超过您正在使用的屏幕宽度。(每行代码不要超过80个字符)3.除非在不完全的switch语句中否则不要使用goto语句。4.注:原则上不应使用goto语句,除非在能够大大减轻编码的复杂性,并不影响可读性的前提下才允许使用。5.在switch语句中总是要有default子句来显示信息。6.代码缩进,一致的代码缩进风格,有利于代码的结构层次的表达,使代码更容易阅读和传阅。7.代码缩进请使用“”键实现,讲不要使用空格,为保证在不同的机器上使代码缩进保持一致,特此规定C的TAB键宽度为个字符。8.方法参数多于8个时采用结构体或类方式传递。9.操作符/运算符左右空一个半角空格。10.所有块的号分别放置一行,并嵌套对齐,不要放在同一行上。11.对于算法较复杂的方法请使用#region属性块分割并注释。12.对于一个类中有多个方法时,请将这些方法按照一定的功能分割为几个小的模块,具体的分割规则由开发人员自行设定,如:13.为了简洁美观起见,每个方法之间应留一行,如:3.7.2 资源释放应用程序中所有外部资源都必须显式释放,如:数据库连接对象、IO对象等。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1