java代码评审内容
评审内容
u 工具检查
□ Eclipse警告
□ FindBug
□ CheckStyle
□ Jupiter
□ Subclipse 或者Subversive
u 代码注释内容(详细参考《代码注释规范》)
□ 类注释内容
□ 接口注释内容
□ 方法注释内容
□ 方法内部注释内容
u 业务逻辑
□ 业务逻辑实现的正确性
□ 业务逻辑实现的完整性
u 代码细节
u 异常处理
□ 接口方法声明需要抛出BusinessException
□ 接口实现类最外层需要强制try….catch,对Exception进行marsh BusinessException包装
□ 禁止出现try….catch后,没有对异常做任何处理的情况
□ 在EJB边界对所有的异常进行marsh BusinessException包装
□ 后台所有方法不再显示的进行异常的抛出声明,如有异常用wrappBusinessException包装成运行时异常直接抛出
□ 前台代码直接抛出后台传递过来的异常
□ 前台代码主动抛异常时,需要使用ExceptionUtils.wrappBusinessException;
□ 前后台异常处理类统一使用nc.vo.pubapp.pattern.exception.ExceptionUtils
□ 未用异常作为业务流程转换的判断
u 效率
□ 接口的定义使用参数数组来进行批量调用,而不是循环调用非批量接口
□ 方法内部禁止出现循环执行相似重复的SQL语句
□ 尽量使用绑定变量的sql
□ sql关联的表不超过3个
□ sql不采用外连接
u 内存
□ UFDobule常量必须使用UFDouble.ZERO, UFDouble.ONE
□ UFBoolean常量必须用UFBoolean.TRUE, UFBoolean.FALSE
□ UFBoolean的值必须采用UFBoolean.valueof(true|false|y|n|Y|N),的形式进行构造
u 其他
□ 临时表命名方式为:TEMP_(模块名称)_(具体作用) 例如:temp_gl_assid temp_fa_depdata
□ 常量要使用NC枚举类
□ 加锁应用统一的工具类,一定先加锁再查询
□ 代码中访问数据库都用相应的VO类,禁止直接使用JDBC
□ 面向接口编程
□ 方法入口处不能对传入参数进行容错处理
□ VO的get/set方法中不能包含业务逻辑
□ VO中不能有业务方法,也不能有数据校验方法
□ 避免全局变量
注:代码评审不负责检查功能、逻辑是否正确,这些要靠单元测试和QA工作来解决
java代码评审内容的更多相关文章
- Spring MVC框架下在java代码中访问applicationContext.xml文件中配置的文件(可以用于读取配置文件内容)
<bean id="propertyConfigurer" class="com.****.framework.core.SpringPropertiesUtil& ...
- 大数据之路week07--day01(HDFS学习,Java代码操作HDFS,将HDFS文件内容存入到Mysql)
一.HDFS概述 数据量越来越多,在一个操作系统管辖的范围存不下了,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,因此迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统 ...
- IDEA工具java开发之 常用插件 git插件 追加提交 Code Review==代码评审插件 撤销提交 撤销提交 关联远程仓库 设置git 本地操作
◆git 插件 请先安装git for windows ,git客户端工具 平时开发中,git的使用都是用可视化界面,git命令需要不时复习,以备不时之需 1.环境准备 (1)设置git (2)本地操 ...
- [刘阳Java]_纯CSS代码实现内容过滤效果
继续我们技术专题课,我们今天给大家带来的是一个比较酷炫的"纯CSS代码实现内容过滤效果",没有加入任何JS的效果.全部都是应用CSS3的新增选择器来实现的.先看效果截图 实现思路 ...
- 转!!Java代码规范、格式化和checkstyle检查配置文档
为便于规范各位开发人员代码.提高代码质量,研发中心需要启动代码评审机制.为了加快代码评审的速度,减少不必要的时间,可以加入一些代码评审的静态检查工具,另外需要为研发中心配置统一的编码模板和代码格式化模 ...
- 敏捷开发中高质量 Java 代码开发实践
Java 项目开发过程中,由于开发人员的经验.代码风格各不相同,以及缺乏统一的标准和管理流程,往往导致整个项目的代码质量较差,难于维护,需要较大的测试投入 和周期等问题. 这些问题在一个项目组初建.需 ...
- Java代码规范、格式化和checkstyle检查配置文档
http://www.blogjava.net/amigoxie/archive/2014/05/31/414287.html 文件下载: http://files.cnblogs.com/files ...
- 您的 Java 代码安全吗 — 还是暴露在外? 【转】
在开发 Java Web 应用程序时,您需要确保应用程序拥有完善的安全性特征补充.这里在谈到 Java 安全性时,我们并不谈及 Java 语言提供的安全性 API,也不涉及使用 Java 代码来保护应 ...
- Java静态检测工具/Java代码规范和质量检查简单介绍(转)
静态检查: 静态测试包括代码检查.静态结构分析.代码质量度量等.它可以由人工进行,充分发挥人的逻辑思维优势,也可以借助软件工具自动进行.代码检查代码检查包括代码走查.桌面检查.代码审查等,主要检查代码 ...
随机推荐
- Master of Sequence
Master of Sequence 时间限制: 10 Sec 内存限制: 128 MB 题目描述 There are two sequences a1,a2,...,an , b1,b2,..., ...
- 【HDOJ5510】Bazinga(KMP)
题意:给定n个由小写字母组成的字符串,第i个字符串为a[i],求最大的j满足存在1<=i<j,a[i]不是a[j]的子串,无解输出-1 T<=50,n<=500,len[i]& ...
- 排名次SQL语句【名次可重复时】
原文发布时间为:2008-10-26 -- 来源于本人的百度文章 [由搬家工具导入] 功能实现 名次可重复时,比如第一名有两个。。。 select *,(select count(distin ...
- time stamp in javascript
JavaScript 获取当前时间戳: 第一种方法: var timestamp = Date.parse(new Date()); 结果:1280977330000 第二种方法: var times ...
- linux 多进程绑定问题
硬件中断发生频繁,是件很消耗 CPU 资源的事情,在多核 CPU 条件下如果有办法把大量硬件中断分配给不同的 CPU (core) 处理显然能很好的平衡性能.现在的服务器上动不动就是多 CPU 多核. ...
- python 高阶函数和匿名函数
#!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2017/11/02 22:46 # @Author : lijunjiang # @Fi ...
- Python 函数的一般形式及参数
#!/usr/bin/env python # -*- coding:utf-8 -*- # @Time : 2017/11/01 21:46 # @Author : lijunjiang # @Fi ...
- gitlab+gerrit+jenkins
gitlab-repo 指在 gitlab 上的代码库, gerrit-repo 指在 gerrit 上的代码库: 从 gitlab-repo 上获取代码 本地修改, 提交 push 到 gerrit ...
- UVA 11389 The Bus Driver Problem 贪心水题
题目链接:UVA - 11389 题意描述:有n个司机,n个早班路线和n个晚班路线,给每个司机安排一个早班路线和一个晚班路线,使得每个早班路线和晚班路线只属于一个司机.如果一个司机早班和晚班总的驾驶时 ...
- [LeetCode] 1.Two Sum 两数之和分析以及实现 (golang)
题目描述: /* Given an array of integers, return indices of the two numbers such that they add up to a sp ...