提高C#代码质量-规范
【规范习惯】
命名规范
1-命名空间 使用<Company>.<Component>
2-程序集不必与命名空间同名
3-命名空间使用附复数
4-避免与FCL的类型重名
5-类型名称用名词
6-接口名称用形容词,以I做前缀
7-派生类命名用基类名做后缀
8-泛型参数以T做前缀
9-枚举名称用复数,枚举元素用单数
10-公开元素命名用PascalCasing法[属性/字段/方法]
11-私有元素命名用camelCasing法[变量/参数名/私有字段]
12-使用类名作为属性名
13-有条件使用前缀(不建议)
14-布尔用is/can/has等肯定性词语
15-已有类型的新版本加后缀
代码规范
1-使用默认访问修饰符[类成员默认private]
2-不建议省略大括号
3-命名有意义
4-坚持单一原则 一个方法只做一件事
5-避免太长的类和方法 推荐不滚屏
6-对外只公开必要操作
7-相关属性合成类
8-代码重用
9-避免太长if和switch[可用数组或字典代替]
10-使用匿名方法或Lambda代替短小方法
11-注释异常
开发行为规范
1-禁止过度设计 [敏捷开发,迭代开发,代码重构]
2-严谨的单元测试
3-重构时测试代码通过后再修改生产代码
提高C#代码质量-规范的更多相关文章
- 提高Objective-C代码质量心机一:简化写法
提高OC代码质量的小心机 一.OC特性 OC 为 C 语言添加了面向对象特性,是其超集; OC 使用动态绑定的消息结构,也就是,在运行时才会检查对象类型; 接收一条消息后,究竟应执行何种代码,由运行期 ...
- 提高Java代码质量的Eclipse插件之Checkstyle的使用详解
提高Java代码质量的Eclipse插件之Checkstyle的使用详解 CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发人员遵守某些编码规范的工具.它能够自动化代 ...
- 提高 Android 代码质量的4个工具
在这篇文章中,我将通过不同的自动化工具如CheckStyle,FindBugs,PMD以及Android Lint来介绍(如何)提高你的安卓代码质量.通过自动化的方式检查你的代码非常有用,尤其当你在一 ...
- 使用JSLint提高JS代码质量
随着富 Web 前端应用的出现,开发人员不得不重新审视并重视 JavaScript 语言的能力和使用,抛弃过去那种只靠“复制 / 粘贴”常用脚本完成简单前端任务的模式.JavaScript 语言本身是 ...
- 提高Java代码质量的Eclipse插件之Checkstyle的使用具体解释
CheckStyle是SourceForge下的一个项目,提供了一个帮助JAVA开发者遵守某些编码规范的工具.它可以自己主动化代码规范检查过程.从而使得开发者从这项重要可是枯燥的任务中解脱出来. Ch ...
- 如何提高JavaScript代码质量
如何编写可维护的JavaScript代码 代码风格及规范 构建检查工具 jshint配置 http://jshint.com/docs/options/ http://www.cnblogs.com/ ...
- 提高PHP代码质量的36个技巧
1.不要使用相对路径 常常会看到: require_once('../../lib/some_class.php'); 该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录. 因此会 ...
- 提高Java代码质量:使用枚举定义常量(转)
一.分析 常量的声明是每一个项目中不可或缺的,在Java1.5之前,我们只有两种方式的声明:类常量和接口常量.不过,在1.5版之后有了改进,即新增了一种常量声明方式,枚举常量.代码如下: enum ...
- 提高php代码质量 36计
1.不要使用相对路径 常常会看到: ? 1 require_once('../../lib/some_class.php'); 该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录. ...
随机推荐
- ExtJs 实现表单联动
最近做的项目使用Extjs.遇到表单联动的业务.下面来说说主要实现思想: 说明:表单联动一般存在从属关系,有大范围的对象和大范围中的小对象.比如地理位置的选定(例:浙江省-杭州市-某某县).在这里,我 ...
- 以空白符结尾的 alias
网上经常有人问这个问题:为什么我写的 alias 在 sudo 下就不管用了? $ alias 'll=ls -l' $ sudo ll a-private-dir sudo: ll: command ...
- tyvj1202 数数食物链
描述 TsyD学习了生物的生态环境那一张后,老师留了一项作业,就是给一张食物网,求所有食物链的总数.(从最低营养级生物(它不能吃任何其他的生物)开始到最高营养级(它不能被任何其他生物吃) 叫做一条食物 ...
- 【转~】初识贝塞尔曲线(Bézier curve)
本文图文大多转自http://www.html-js.com/article/1628 QAQ我居然去扒维基,,,看不懂啊,,,我要去补数学,,, 在做变形小鸡的时候用到CSS3 transition ...
- js导出表格数据
考虑到浏览器兼容性问题,采用原生js和后台交互下载网页数据 js: var table = $('.table-panel table'); // Header var tdData ="& ...
- 清理系统 cmd
echo 正在清除系统垃圾文件,请稍等......del /f /s /q %systemdrive%*.tmpdel /f /s /q %systemdrive%*._mpdel /f /s /q ...
- 解析XML文档
<html> <body><h1>W3School.com.cn Internal Note</h1><p><b>To:< ...
- JSONObject.fromObject(map)(JSON与JAVA数据的转换)
JSON与JAVA数据的转换(JSON 即 JavaScript Object Natation,它是一种轻量级的数据交换格式,非常适合于服务器与 JavaScript 的交互.) 上一篇文章中有这么 ...
- jsp实验一
1.熟悉MyEclipse开发环境,熟悉菜单,修改代码的字体和显示行号. 2.动手做第一个输出hello World的实例. 3.定义一个jsp页面,在其中定义个变量,该变量随机产生,数据范围是[0- ...
- ABAP 订单转交货单
*& Report ZSDR025 *& *&---------------------------------------------------------------- ...