原创

开发代码自我规范-高效开发参照-代码自我review

开发代码自我规范:

  1. 单元测试跑一下。
  2. 事务未提交问题,(尽量在aftercommit写逻辑,不一定有效;ttl保存;调整隔离级别,另外增删改要加事务)。
  3. 异常处理。
  4. insertOrUpdate 或者 selectThenInsert操作 都需要同步锁,另外加锁场景注意限制锁范围,
  5. 刷数据接口重复请求(静态变量判断)。
  6. 增加详细日志【如果测试环境的打印不出来,需要调整日志的打印级别,注意启动参数profiles可能也要调整】。
  7. 异步threadlocal有没有值。
  8. aftercommit异常捕获。
  9. 关注编辑器警告。
  10. sql一对多导致查询数据不正确,这个非常隐蔽,on条件尽量写到最全。
  11. 整体检查一遍代码,比如有没有写错字段,对对需求。
  12. 代码层面:嵌套的事务隔离级别回滚机制(spring),@Retryable 、@Async生效(启动类上增加@Enable* + 同类中注入自身类)。
  13. 测试环境的报错不能放过,尤其是循环刷数据中的报错。
  14. 根据实际场景,减少无用执行逻辑,只需要更新部分的业务表,禁止扩大更新范围(定时任务默认是单线程的,单个定时任务如果间隔短,耗时长,就会始终占据单线程。即便定时任务改造成多线程,如果多线程占用资源耗时大,也会导致无法执行,这就讲究代码的执行效率和减少无用功,禁止粗暴得全局类更新)。
  15. 代码备注要相对完善
  16. 分析问题时,不要轻易下猜测性结论,需要先结合监控+日志综合分析。
  17. 抛出的异常会不会导致正常业务流程全部中止(存在分支或者循环的场景)?
正文到此结束
本文目录