02_中软国际Java项目开发CodeReview常见问题实例分析及指南.doc

02_中软国际Java项目开发CodeReview常见问题实例分析及指南.doc

  1. 1、本文档共40页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
02_中软国际Java项目开发CodeReview常见问题实例分析及指南

中软国际Java项目开发CodeReview 常见问题实例分析及指南 基础技术资源开发与管理部 2005年8月31日 第一章 综述 4 第二章 常见问题分类及实例分析 4 2.1 开发规范类 4 2.1.1 命名规范 4 2.1.2 代码格式 7 2.2 性能影响及系统稳定性 10 2.2.1 Java操作数据库 10 2.2.2 数据库SQL开发注意事项 14 2.2.3 数据库存储过程编写 17 2.2.4 Java编程方面 19 2.3 编程易错误区及系统健壮性 21 2.3.1 空指针错误的引发 21 2.3.2 格式化数字错误 22 2.3.3 字符串越界错误 22 2.3.4 没有克隆(clone)返回的对象 22 2.3.5 不必要的克隆 24 2.3.6 自编代码来拷贝数组 25 2.3.7 拷贝错误的数据 26 2.3.8 检查new 操作的结果是否为null 28 2.3.9 用== 替代.equals 28 2.3.10 混淆原子操作和非原子操作 29 2.3.11 在catch 块中作清除工作 30 2.3.12 增加不必要的catch 块 31 2.3.13 没有正确实现equals,hashCode,或者clone 等方法 31 2.4 Java编程不良习惯 32 2.4.1 Servlet中获取数据库连接问题 32 2.4.2 对于Exception的处理 32 2.4.3 有关常量的使用 33 2.4.4 静态变量的使用 33 2.4.5 未使用的变量 33 2.4.6 过于庞大的try块 33 2.4.7 最好不要让系统自己进行类型转换 36 2.5 ResourceOne开发框架使用问题 36 2.5.1 在普通JavaClass中获得数据库连接 36 2.5.2 Servlet中使用SearchDAO 37 2.5.3 程序调试信息 37 2.5.4 超长类名:使用R1Studio生成数据访问类的问题 37 2.5.5 代码中直接使用JDBC进行数据库操作 38 2.5.6 代码的分包问题 38 2.5.7 使用DAO操作时直接在Servlet里进行操作 39 2.6 业务逻辑问题 39 2.6.1 程序逻辑错误 39 综述 基础技术资源开发与管理部在颁布《六统一管理代码review办法》中,从管理的角度对中软国际所有的软件开发项目的程序代码review作了相关的要求,并且推行Jupiter这样的CodeReview协同管理工具来辅助促进和跟踪review的状态和结果。 CodeReview的基本手段还是需要技术经理通过人工检查项目成员的代码,来将各种问题扼杀在开发阶段,但是不同经验及技术水平的经理在review同一段代码所发现的问题可能相差比较大,不同的Team可能因此产生的效果也不同。本文从实际项目中抽取了一些项目中常见的Java开发所涉及的问题,进行实例分析,为各技术经理提供靶子和借鉴参考,如果审查者能够有意识地寻找特定的错误,而不是靠漫无目的的浏览代码来发现错误,那么代码审查的效果会事半功倍(不允许用汉语拼音),如: firstNamezipCode 用复数命名collection类变量ollection包括数组,vector等。命名时使用复数: customers classmates 方法名 方法的名字必须用一个小写字母开头。后面的单词用大写字母开头。 方法的名字要与该方法的用途相关。 参数名 参数的命名 :参数的名字必须和变量的命名规范一致。 方法的参数 :使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字。 增删改程序和页面的调用关系和文件名 AddOrderServer, SaveOrderServer, DeleteOrderServlet不需要页面,其他有JSP页面的Servlet要与JSP文件名相对应。OrderDetailServet对应两个JSP文件,EditOrder用于可编辑状态,ShowOrder用于不可编辑状态。 AddOrderServlet和SaveOrderServlet的返回页面可以是List页面,也可以是Detail页面,如果当前人已完成所有可进行的操作,则回到List页面,如果未完成,则回到Detail页面。 CSS 为不同的部署功能应用建立不同的CSS件,如建三个文件:stama.css, industry.css和commerce.css 代码格式 Java程序 文件头 版权信息 版权信息必须在 java 文件的开头,比如: /** * 类名 * * 日期 ** Copyright ICSS 2003 * All right reserved. */ 其他不需要出现在 javadoc 的信息也可以包含在这

文档评论(0)

zhuwenmeijiale + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7065136142000003

1亿VIP精品文档

相关文档