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工作来解决

posted @   ppjj  阅读(1480)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示