- 使用BigDecimal.ZERO 代替 new BigDecimal(0)
- 遇到需要返回空集合的情况,使用Collections.emptyList() 代替 new ArrayList(),减少创建对象开销
- 使用Google Guava 的Lists.newArrayList(),Maps.newHashMap() 等更高语义层次的工厂方法代替Java中的new 关键字
- 善用Java 8 Lambda 表达式减少代码量
- 在确定元素个数的情况下,初始化指定集合大小。例如new ArrayList(size),new HashMap(size),减少扩容的开销
- 利用Java 8 Optional替代令人厌恶的判空
- 遵循REST API 规范发布对外接口
- 使用配置文件代替程序中的hard code,例如超时时间
- 重构代码要有足够的测试覆盖