附 1 版本历史
| 版本号 | 版本名 | 发布日期 | 备注 |
|---|---|---|---|
| -- | -- | 2016.12.07 | 试读版本首次对外发布 |
| 1.0.0 | 正式版 | 2017.02.09 | 阿里巴巴集团正式对外发布 |
| 1.0.1 | -- | 2017.02.13 | 1)修正 String[] 的前后矛盾2) vm 修正成 velocity3)修正 countdown 描述错误 |
| 1.0.2 | -- | 2017.02.20 | 1)去除文底水印 2)数据类型中引用太阳系年龄问题 3)修正关于异常和方法签名的部分描述 4)修正 final 描述5)去除 Comparator 部分描述 |
| 1.1.0 | -- | 2017.02.27 | 1)增加前言 2)增加 <? extends T> 描述和说明3)增加版本历史 4)增加专有名词解释 |
| 1.1.1 | -- | 2017.03.31 | 修正页码总数和部分示例 |
| 1.2.0 | 完美版 | 2017.05.20 | 1)根据云栖社区的“聚能聊”活动反馈,对手册的页码、排版、描述进行修正 2)增加 final 的适用场景描述3)增加关于锁的粒度的说明 4)增加“指定集合大小”的详细说明以及正反例 5)增加卫语句的示例代码 6)明确数据库表示删除概念的字段名为 is_deleted |
| 1.3.0 | 终极版 | 2017.09.25 | 增加单元测试规约,阿里开源的 IDE 代码规约检测插件:点此下载 |
| 1.3.1 | 纪念版 | 2017.11.30 | 修正部分描述;采用和 P3C 开源 IDE 检测插件相同的 Apache 2.0 协议 |
| 1.4.0 | 详尽版 | 2018.05.20 | 增加设计规约大类,共 16 条 |
| 1.5.0 | 华山版 | 2019.06.19 | 1)鉴于手册是 Java 社区开发者集体智慧的结晶,移除《阿里巴巴 Java 开发手册》的限定词“阿里巴巴”2)新增 21 条新规约。比如, switch 的 NPE 问题、浮点数的比较、无泛型限制、锁的使用方式、判断表达式、日期格式等3)修改描述 112 处。比如, IFNULL 的判断、集合的 toArray、日志处理等4)完善若干处示例。比如,卫语句示例、 enum 示例、finally 的 return 示例等 |
| 1.6.0 | 泰山版 | 2020.04.22 | 1)发布错误码统一解决方案,详细参考附表 3。 2)修改描述 90 处。比如,阻塞等待锁、建表的小数类型等。 3)完善若干处示例。比如, ISNULL 的示例等。4)新增 34 条新规约。比如,日期时间的闰年、闰月问题,三目运算的自动拆箱, SQL 查询的表别名限定,Collectors 类的 toMap() 方法使用注意等。 |
| 1.7.0 | 嵩山版 | 2020.08.03 | 1)新增前后端规约 14 条。 2)新增禁止任何歧视性用语的约定。 3)新增涉及敏感操作的情况下日志需要保存六个月的约定。 4)修正 BigDecimal 类中关于 compareTo 和 equals 的等值比较。5)修正 HashMap 关于 1024 个元素扩容的次数。6)修正架构分层规范与相关说明。 7)修正泰山版中部分格式错误和描述错误。 |
| 1.7.1 | 黄山版 | 2022.02.03 | 1)新增 11 条新规约。比如,浮点数的后缀统一为大写;枚举的属性字段必须是私有且不可变;配置文件中的密码需要加密等。 2)新增描述中的正反例 2 条。比如,多个构造方法次序、 NoSuchMethodError 处理;新增扩展说明 5 条。比如,父集合元素的增加或删除异常等。3)修改描述 22 处。比如,魔法值的示例代码、 ScheduledThreadPool 问题等。4)修正嵩山版中部分代码格式错误和描述错误。 |