代码规范每家都有, 可发现开发的时候执行力很差. 所以自己小结了一下具有"可操作性"的规定. 呵呵.
1/ 所有文件编码为utf-8
2/ 所有操作的入口都必须log开始和结束时间, 并记录功能点名称 及功能负责人
3/ 及时重构
(不要出现重复的代码. 代码越少, 复杂度越小, 需要大改的时候可以来一个"华丽丽的转身". 船小好调头)
4/ 详细的log信息【要知道发生了什么】
(测试的MM会按照你的log信息和功能文档来对比, 你的log信息中有没有实现"一对一")
5/ 自定义类要重载 toString()方法
(方便log的输出)
6/ 使用枚举而不要使用string来区分类型
(之前使用字符串来标识"成功"/"失败"/"挂起", 后来发现接手的人不知道查询条件是什么...不要跟我说"你们的文档呢"..当你的面对一百来篇文档时, 你的后面还有一个老大来看着你的进度..你就会知道我说的什么意思.)
7/ 使用StringBuffer或者StringBuilder构建长字符串而不要使用加号
8/ 写单元测试
(这个不太好操作. 因为测试的粒度每个项目会不一样)
9/ 使用 findBugs 代码自查
http://findbugs.cs.umd.edu/eclipse
- 代码命名规范采用Sun命名规范。
- 代码布局规范采用MyEclipse建议(Source->Format)。
- 每个java类长度不得超过1000行;大型类需要备案。
- 代码中禁止出现System.out/System.err调用
- 代码中任何对HttpSession的引用和使用必须备案
- 代码中关键位置需要书写完整的注释,包括:代码的作用,适用返回,特殊的输入和输出参数等。如果此处出现过bug,需要记录bug出现的原因以及修复办 法。
- 代码中关键位置和错误需要记录到log中,采用apache common logs进行日志记录。
- 所有某些数据库专用的sql语句需要备案,并尽量避免。
- 关键代码需要编写测试用例,测试采用JUnit。
- 代码服务器采用SVN。
- 每天早上需要从SVN下载最新的代码,每天晚上下班前提交本地代码。
- 提交到SVN的代码需要保证可以随时运行,有问题的代码不得提交。
- 数据库表每列总长度不得超过1024字节。
- 超过1024字节的表,字段数不得超过5个。
- 执行时长超过1秒的sql语句,每分钟不得多于1次执行。
- 执行join查询的sql语句,每秒钟不得多于1次执行。