团队项目开发"编码规范"之九:

代码分析

发布日期:2011317星期三作者:EricHu

 

                                                                                                                      勤能补拙、笨鸟先飞。

使用Visual Studio自身的代码分析功能,检查内容如下表,分为

1.安全规则。

2.互操作性规则

3.可维护性规则

4.可以只性规则

5.命名规则

6.全球化规则

7.设计规则

8.性能规则

9.移动性规则

10.用法规则

其中“是否检查”一项中为“√”的内容不能违反。需在Visual Studio中设置为错误

9.1.安全性规则

标识

详细信息

是否检查

CA2100

检查Sql查询中是否有安全漏洞

CA2104

不要声明只读可变引用类型

CA2105

数组字段不应为只读

CA2121

静态构造函数应为私有

9.2.可靠性规则

标识

详细信息

是否检查

CA2000

超出范围前释放对象

9.3.可维护性规则

标识

详细信息

是否检查

CA1500

变量名不应与字段名相同

CA1501

避免过度继承

CA1502

避免过度复杂

9.4.命名规则

标识

详细信息

是否检查

CA1700

不要将枚举值命名为“Reserved”

CA1705

较长的首字母缩略词应采用Pascal大小写格式。

CA1706

较短的首字母缩略词应全部大写

CA1707

标识符不应包含下划线

CA1709

标识符的大小写应该正确

CA1710

标识符应具有正确的后缀

CA1711

标识符应采用正确的后缀

CA1712

不要将类型名用作枚举值的前缀

CA1713

事件不应具有 before 或 after 前缀

CA1715

标识符应具有正确的前缀

CA1716

标识符不应与关键字冲突

CA1718

避免在参数中使用特定于语言的类型名

CA1719

参数名不应与成员名冲突

CA1720

标识符不应包含类型名

CA1721

属性名不应与 get 方法冲突

CA1722

标识符应采用正确的前缀

CA1724

类型名不应与命名空间冲突

CA1725

参数名应与基方法中的声明保持一致

9.5.性能规则

标识

详细信息

是否检查

CA1800

避免进行不必要的强制转换

CA1804

移除未使用的局部变量

CA1805

避免进行不必要的初始化

CA1809

避免过多的局部变量

CA1812

避免未实例化的内部类

CA1813

避免未密封的属性

CA1819

属性不应返回数组

CA1823

避免未使用的私有字段

9.6.用法规则

标识

详细信息

是否检查

CA1801

检查未使用的参数

CA2202

不要多次释放对象

CA2211

非常数字段不应该是可见的

CA2218

重写 Equals 时重写 GetHashCode

CA2219

不要在异常子句中引发异常

CA2222

不要降低继承成员的可见性

CA2230

对个数可变的参数使用 params

CA2233

运算不应溢出

团队项目开发“编码规范”之九:代码分析相关推荐

  1. 团队项目开发编码规范

    团队项目开发"编码规范"之一:概述 "程序员.程序员"顾名思义就是来编程序的人员.他们和一般工作人员是一样的,都需要合作,可能为了一个大型项目程序会有十人以上或 ...

  2. 团队项目开发编码规范之一:概述

    团队项目开发"编码规范"之一:概述 发布日期:2011年3月18日星期三作者:EricHu   勤能补拙.笨鸟先飞. "程序员.程序员"顾名思义就是来编程序的人 ...

  3. C++_开发_项目开发编码规范

    文章目录 1.头文件 1.1.Self-contained 头文件: 1.2.头文件中的 #define 的保护: 1.3.尽可能地避免使用前置声明: 1.4.内联函数: 1.5.#include 的 ...

  4. 【项目篇】Android团队项目开发之统一代码规范

    前言 团队项目开发前的统一三要素:统一需求/开发文档,统一代码规范,统一环境(编译/测试/发布). 一个项目团队,要想有高效的产出,必须在团队协作上下好功夫,必须在项目开发统一进度上做好协调.只有在高 ...

  5. 软件开发编码规范_如果您只喜欢编码,请不要成为软件开发人员

    软件开发编码规范 If you are starting now or thinking about to start a software development career. Or even i ...

  6. iOS开发编码规范与审核时的注意事项

    iOS开发编码规范与审核时的注意事项 一. 编码的排版格式 1 代码的缩进应使用空格(SPACE),不能使用制表符(TAB),并且缩进以2个字符为单位. 2 空格的使用 a) 关键字与其后的表达式之间 ...

  7. 《团队项目开发之三对一维环形数组的求解》

    <团队项目开发之三对一维环形数组的求解> 设计思想:通过把数组的长度扩大为原来的一倍,相当于新数组是由对原来的数组重复了一遍后而组成的,这样保证了数组以环状的形式,按照数组中每个数字的位序 ...

  8. Android开发编码规范pdf文件下载

    Android开发编码规范.pdf文件下载 Android开发编码规范.pdf文件下载. 公司要求成立统一的开发流程和编码规范,希望每个人的编码一致,风格一致,这样有利于提高开发效率,于是我从网上整理 ...

  9. 【开发规范】go项目开发中的[流程,git,代码,目录,微服务仓库管理,静态检查]

    文章目录 前言 一.有哪些规范我们应该遵循 二.项目开发流程 三.git的代码分支管理 1. 分支管理 2. commit规范 三.go的代码规范 四.go项目目录规范 五.微服务该采用multi-r ...

最新文章

  1. ARP协议全面实战手册——协议详解、攻击与防御(内部资料)
  2. 实用的才是最好的,教你如何以MATLAB的方式实现高等应用数学问题(二)
  3. fir.im Weekly - 做一款 App 需要考虑什么
  4. matlab怎么给函数自变量赋值_MATLAB的变量及赋值
  5. 苏州数字网络计算机比赛,苏州市计算机学会数字化校园专委会2018年年会在我院召开...
  6. BOOST_VMD_ASSERT_IS_TUPLE宏相关的测试程序
  7. Redis 它是什么?它用来做什么?它的优势与短板如何?
  8. 基于jQuery/zepto的单页应用(SPA)搭建方案
  9. Ubuntu Docker 安装
  10. Python拓展12(使配置文件生效ConfigParser模块)
  11. mysql可视化工具路径访问_windows开启3306端口并用可视化工具访问远程mysql(授权访问)...
  12. OpenCV图像直方图案例
  13. C#的6种常用集合类大比拼
  14. 第三方全网发布 返回Api文本消息解决失败
  15. 【数字信号处理】离散时间信号 ( 离散时间信号 与 连续时间信号 关系 | 序列表示法 | 列表法 | 函数表示法 | 图示法 )
  16. 网页中使用阿里图标iconfont
  17. ubuntu下搭建不同端口网站
  18. 什么是DDOS攻击?怎么抵抗DDOS攻击?
  19. Windows使用三:笔记本打不开wifi
  20. failed to push some refs to 'git@xxx.xxx.xxx.xxx:finger-shoot/shoot-admin.git'

热门文章

  1. Web 的全栈工程师必修课 - 关于 MVC 框架
  2. 阿里云虚拟机 php $_SESSION 失效问题
  3. FOC——10.11.IR2106半桥预驱电路
  4. 解决 macbook m1 苹果笔记本电脑 关闭盖子 休眠
  5. 微信公众平台iPhone版内测开始了
  6. mysql:设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。四个表的结构分别如表1-1的表(一)表(四)所示
  7. AndroidStudio软件用法详细说明
  8. 基于php的外卖订餐系统开题报告_校园网上订餐系统的设计与实现(PHP,MySQL)
  9. 有关php地英语文章,实用英语短句-PHP教程,其它文章
  10. html 名人名言源代码,基于JQuery及AJAX实现名人名言随机生成器_咋地 _前端开发者...