Java开发手册版本说明及下载
版本由来说明
传说中的Java开发手册华山版、泰山版、嵩山版、黄山版眼花缭乱,它们之间到底什么关系,看完下面的介绍,你就会有清晰的认识。
Java开发手册版本历史:
版本号 | 版本名称 | 发布时间 |
---|---|---|
1.0.0 | 公开版 | 2016.12.07 |
1.1.0 | 正式版 | 2017.02.27 |
1.2.0 | 升级版 | 2017.05.20 |
1.3.0 | 终极版 | 2017.09.19 |
1.4.0 | 详尽版 | 2018.06.06 |
1.5.0 | 华山版 | 2019.06.13 |
1.6.0 | 泰山版 | 2020.04.22 |
1.7.0 | 嵩山版 | 2020.08.03 |
1.7.1 | 黄山版 | 2022.02.03 |
原作者述:
最初的版本,没有名称,只有版本号,从1.0.0开始,后来感觉并不利于传播,改成以五岳来命名。因为华山最有武侠渊源,所以第一个版本叫做《华山版》,边上的码出真功有点向周星驰电影功夫最后的场景《如来神掌》致敬的味道;华山之后,去五岳至尊泰山朝圣,感受东海日出的壮观;泰山之后,去往嵩山,因为那里有一个金庸先生笔下武功最高的人物——扫地僧,所以封面用了扫地僧的原型。印象最深的是封面,太阳下的扫地僧在台阶上的影子,来来回回还改了好几次,为了逼真,我觉得影子需要有点折子的感觉,表达这是台阶上的影子;嵩山之后,不出意外是恒山版,为此还去了悬空寺,结果无意中发现恒山和衡山的发音居然完全相同,这个在表达上是大忌,增加无谓的共同成本;为此还公开征集下一个版本名称,收到:天山版,屏峰版,玉山版,黄山版…,最后选择了黄山版,是那句诗:五岳归来不看山,黄山归来不看岳,那就遗忘掉以前的版本。
前言
《Java 开发手册》是阿里巴巴集团技术团队的集体智慧结晶和经验总结,经历了多次大规模一线实战的检验及不断完善,公开到业界后,众多社区开发者踊跃参与,共同打磨完善,系统化地整理成册,当前的版本是嵩山版。现代软件行业的高速发展对开发者的综合素质要求越来越高,因为不仅是编程知识点,其它维度的知识点也会影响到软件的最终交付质量。比如:五花八门的错误码人为地增加排查问题的难度;数据库的表结构和索引设计缺陷带来的系统架构缺陷或性能风险;工程结构混乱导致后续项目维护艰难;没有鉴权的漏洞代码易被黑客攻击等等。所以本手册以 Java 开发者为中心视角,划分为编程规约、异常日志、单元测试、安全规约、MySQL 数据库、工程结构、设计规约七个维度,再根据内容特征,细分成若干二级子目录。另外,依据约束力强弱及故障敏感性,规约依次分为【强制】、【推荐】、【参考】三大类。在延伸信息中,“说明”对规约做了适当扩展和解释;“正例”提倡什么样的编码和实现方式;“反例”说明需要提防的雷区,以及真实的错误案例。
手册的愿景是码出高效,码出质量。现代软件架构的复杂性需要协同开发完成,如何高效地协同呢?无规矩不成方圆,无规范难以协同,比如,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全,试想如果没有限速,没有红绿灯,谁还敢上路行驶?对软件来说,适当的规范和标准绝不是消灭代码内容的创造性、优雅性,而是限制过度个性化,以一种普遍认可的统一方式一起做事,提升协作效率,降低沟通成本。代码的字里行间流淌的是软件系统的血液,质量的提升是尽可能少踩坑,杜绝踩重复的坑,切实提升系统稳定性,码出质量。
我们已经在 2017 杭州云栖大会上发布了配套的 Java 开发规约 IDE 插件,下载量达到 162 万人次,阿里云效也集成了代码规约扫描引擎。次年,发布 36 万字的配套详解图书《码出高效》,本书秉持“图胜于表,表胜于言”的理念,深入浅出地将计算机基础、面向对象思想、JVM 探源、数据结构与集合、并发与多线程、单元测试等知识客观、立体地呈现出来。紧扣学以致用、学以精进的目标,结合阿里巴巴实践经验和故障案例,与底层源码解析融会贯通,娓娓道来。《码出高效》和《Java开发手册》稿费所得收入均捐赠公益事情,希望用技术情怀帮助更多的人。
目录
一、编程规约 ..........................................................................1
(一) 命名风格......................................................................1
(二) 常量定义......................................................................4
(三) 代码格式......................................................................5
(四) OOP 规约......................................................................7
(五) 日期时间.....................................................................11
(六) 集合处理.....................................................................12
(七) 并发处理.....................................................................17
(八) 控制语句.....................................................................20
(九) 注释规约.....................................................................24
(十) 前后端规约...................................................................25
(十一) 其他.......................................................................27
二、异常日志 .........................................................................29
(一) 错误码.......................................................................29
(二) 异常处理.....................................................................30
(三) 日志规约.....................................................................32
三、单元测试 .........................................................................35
四、安全规约 .........................................................................37
五、MySQL 数据库......................................................................38
(一) 建表规约.....................................................................38
(二) 索引规约.....................................................................39
(三) SQL 语句.....................................................................41
(四) ORM 映射.....................................................................42
六、工程结构 .........................................................................44
(一) 应用分层.....................................................................44
(二) 二方库依赖...................................................................45
(三) 服务器.......................................................................46
七、设计规约 .........................................................................48
附 1:版本历史....................................................................51
附 2:专有名词解释................................................................53
附 3:错误码列表..................................................................54
(注:浏览时请使用 PDF 左侧导航栏)
下载
Java开发手册各版本下载地址:
https://developer.aliyun.com/topic/java20
黄山版下载地址:
https://github.com/alibaba/p3c