《c#编码规范(参考网络)》由会员分享,可在线阅读,更多相关《c#编码规范(参考网络)(6页珍藏版)》请在金锄头文库上搜索。
1、C#编码规范C#编程规范C#编码规范基本要求1. 程序结构清析,简单易懂,单个函数的程序行数不应超过 100 行。2. 打算干什么,要简单,直接了当,代码精简,避免垃圾程序。3. 尽量使用标准库函数和公共函数。4. 不要随意定义全局变量,尽量使用局部变量。5. 使用括号以避免二义性。可读性要求1. 可读性第一,效率第二。2. 保持注释与代码完全一致。3. 每个源程序文件,都有文件头说明,说明规格见规范。4. 每个函数,都有函数头说明,说明规格见规范。5. 主要变量(结构、联合、类或对象)定义或引用时,注释能反映其含义。6. 处理过程的每个阶段都有相关注释说明。7. 利用缩进来显示程序的逻辑结构
2、,缩进量一致并以 Tab 键为单位,定义 Tab 为 4 个字节。8. 循环、分支层次不要超过五层。9. 注释可以与语句在同一行,也可以在上行。10. 空行和空白字符也是一种特殊注释。11. 一目了然的语句不加注释。12. 注释的作用范围可以为:定义、引用、条件分支以及一段代码。13. 注释行数(不包括程序头和函数头说明部份)应占总行数的 1/5 到 1/3 。结构化要求1. 禁止出现两条等价的支路。2. 用 IF 语句来强调只执行两组语句中的一组。禁止 ELSE GOTO 和 ELSE C#编码规范RETURN。3. 用 SWITCH 实现多路分支。4. 避免从循环引出多个出口。5. 函数只
3、有一个出口。6. 不使用条件赋值语句。7. 避免不必要的分支。8. 不要轻易用条件分支去替换逻辑表达式。正确性与容错性要求1. 程序首先是正确,其次是优美2. 无法证明你的程序没有错误,因此在编写完一段程序后,应先回头检查。3. 改一个错误时可能产生新的错误,因此在修改前首先考虑对其它程序的影响。4. 所有变量在调用前必须被初始化。5. 对所有的用户输入,必须进行合法性检查。6. 不要比较浮点数的相等,如: 10.0 * 0.1 = = 1.0 , 不可靠。7. 程序与环境或状态发生关系时,必须主动去处理发生的意外事件,如文件能否逻辑锁定、打印机是否联机等。8. 单元测试也是编程的一部份,提交
4、联调测试的程序必须通过单元测试。可重用性要求1. 重复使用的完成相对独立功能的算法或代码应抽象为公共控件或类。2. 公共控件或类应考虑 OO 思想,减少外界联系,考虑独立性或封装性。3. 公共控件或类应建立使用模板。网格,ImageList 等的索引用关键字,不要用 Index 属性,避免以后添加或删除后,程序不能正常工作。全局变量前面加 g,模块变量前面加 mC#编码规范规定的常用缩写如下:常用词 缩写Argument ArgBuffer BufClear ClrClock ClkCompare CmpConfiguration CfgContext CtxDelay DlyDevice D
5、evDisable DisDisplay DispEnable EnError ErrFunction FnctHexadecimal HexHigh Priority Task HPTI/O System IOSInitialize InitMailbox MboxManager MgrMaximum MaxMessage MsgMinimum MinMultiplex MuxOperating System OSOverflow OvfParameter ParamPointer PtrPrevious PrevPriority PrioRead RdReady RdyRegister R
6、egSchedule SchedSemaphore SemStack StkSynchronize SyncTimer TmrTrigger TrigWrite WrC#编码规范说明:下面是一些在软件中常用的反义词组。add/remove ; begin/end ; create/destroy ; insert/delete ;first/last ; get/release ; increment/decrement ; put/get ;add/delete ; lock/unlock ; open/close ; min/max ;old/new ; start/stop ; next/previous ; source/target ;show/hide ; send/receive ;source/destination ; cut/paste ;up/downC#编码规范