1. 云栖社区>
  2. 博客列表>
  3. 正文

【Java编码规范】《阿里巴巴Java开发手册(正式版)》更新(v1.2.0版)——迄今最完善版本

云木西 2017-02-08 17:01:38 浏览361790 评论113

java 阿里巴巴 开发手册

摘要: 阿里巴巴集团推出的《阿里巴巴Java开发手册(正式版)》是阿里巴巴近万名开发同学集体智慧的结晶,以开发视角为中心,详细列举如何开发更加高效、更加容错、更加有协作性,力求知其然,更知其不然,结合正反例,让Java开发者能够提升协作效率、提高代码质量。

今年年初,《阿里巴巴Java开发手册》正式发布,阿里官方Java代码规范标准首次对外公开。手册发布之后在业界、学术界都获得了广泛的关注,仅微博浏览量就突破千万,下载访问量超过40万,多家媒体主动转发,并将其称为“Java工程师必备宝典”。

在收集外部建议和阿里内部经验更新的基础上,阿里规约项目组正式推出《阿里巴巴Java开发手册》1.2.0升级版,堪称史上最完善版本。

点击下载《阿里巴巴Java开发手册》(v1.2.0版):https://yq.aliyun.com/attachment/download/?id=1651 

v1.2.0版本更新亮点:更新排版,更新部分示例。

 (版本不断更新中,请收藏本文,以免错过重要更新)

94978f1bf8474dc3b2fe30b0fc0ff29f1e45b277

(点击参与话题讨论:Java开发者们,一起来聊聊大家的开发规约吧


你是否曾因Java代码规范版本纷杂而无所适从?

你是否想过代码规范能将系统故障率降低20%?

你是否曾因团队代码风格迥异而协同困难?

你是否正在review一些原本可以避免的故障?

你是否无法确定自己的代码足够健壮? 

码出高效,码出质量!

相比C++代码规范业界已经达成共识,Java代码规范业界比较混乱,我们期待这次发布的Java代码规范能够给业界带来一个标准,促使整体行业代码规范水平得到提高,最终能够帮助企业和开发者提升代码质量和降低代码故障率。

 

阿里出品,质量保证!

阿里Java技术团队一手打造出Dubbo、JStorm、Fastjson等诸多流行开源框架,部分已成为Apache基金会孵化项目;

阿里在Java后端领域支撑起全球访问量最大的服务器集群;

Java代码构建的阿里双11业务系统订单处理能力达到17.5万笔/秒;

到目前已累计数亿行高并发、高稳定性的最佳Java代码实践;

……

此次首度公开的Java开发手册正是出自这样的团队,近万名阿里Java技术精英的经验总结,并经历了多次大规模一线实战检验及完善,铸就了这本高含金量的阿里Java开发手册。该手册以Java开发者为中心视角,划分为编程规约、异常日志规约、MYSQL规约、工程规约、安全规约五大块,再根据内容特征,细分成若干二级子目录。根据约束力强弱和故障敏感性,规约依次分为强制、推荐、参考三大类。此套规范不仅能让代码一目了然, 更有助于加强团队分工与合作、真正提升效率。 


无规矩不成方圆 无规范不能协作

众所周知,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全。试想如果没有限速,没有红绿灯,没有规定靠右行驶,谁还敢上路行驶。 

同理,对软件来说,适当的规范和标准绝不是消灭代码内容的创造性、优雅性,而是限制过度个性化,以一种普遍认可的方式一起做事,降低故障率,提升协作效率。开发手册详细列举如何开发更加高效,更加容错,更加有协作性,力求知其然,更知其不然,结合正反例,提高代码质量。比如,异常日志处理时的各种不规范行为;集合转换的各种坑;创建线程池出现的等待队列OOM等。 


阿里技术资深大咖联袂推荐

阿里高级研究员多隆:工程师对于代码,一定要“精益求精”,不论从性能,还是简洁优雅,都要具备“精益求精”的工匠精神,认真打磨自己的作品。 

阿里研究员毕玄:一个优秀的工程师和一个普通工程师的区别,不是现在满天飞的架构图,他的功底就是体现在他写的每一行代码上。 

阿里研究员玄难:代码是软件工程里面的产品设计、系统架构设计等工作的最后承载体,代码的质量决定了一切工作的成败。 

阿里巴巴B2B事业群CTO李纯:好的软件产品离不开工程师高质量的代码及相互间顺畅的沟通与合作。简单,适用的代码规约背后所传递的是技术上的追求卓越、协同合作的精神,是每个技术团队不可缺失的重要利器。 

阿里研究员、HipHop作者:赵海平(花名:福贝):程序员是创造个性化作品的艺术家,但同时也是需要团队合作的工种。个性化应尽量表现在代码效率和算法方面,牺牲小我,成就大我。 


拥抱规范,远离伤害!

开发的同学们赶紧行动起来,遵守代码规范,你好,我好,大家好! 


【9元建站,点击立享:https://market.aliyun.com/tpldns


关注云栖社区微信公众号:

2adbbb40545618044d6ebff62c513480e7591581

版权声明:本文内容由互联网用户自发贡献,本社区不拥有所有权,也不承担相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至:yqgroup@service.aliyun.com 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

用云栖社区APP,舒服~

【云栖快讯】首届阿里巴巴中间件技术峰会,揭秘阿里10年分布式技术沉淀!阿里高可用体系核心缔造者、全链路压测创始人,DRDS与TDDL负责人等大咖出场,干货分享,不可错过!  详情请点击

网友评论

101F
1304715849105571

“(三)格式规约”里的“4. 【强制】任何运算符左右必须加一个空格”,对于单目运算符(如++, --等),常见做法是不留空格。

孤尽 赞同
孤尽

我相信大家能够明白背后的语义,但是如果上升到法规的严谨性,的确是需要加限定词。

评论
102F
zhuguowei2

(六) 并发处理 5. Java8可以这样处理: public final static ThreadLocal formatter = ThreadLocal.withInitial(() -> new DateFormatter(new SimpleDateFormat("yyyy-MM-dd")));

优点:
1. 代码更清晰
2. JVM会少加载一个类

摘自:Java8函数式编程 Richard Warburton著

103F
leilove321

为什么没有关于Java REST的相关规范?

104F
qianman

是否可以不要使用 pdf?开源到 Github 上边,大家可以不断提交,扩展。

孤尽

云栖大会见。

评论
105F
alimph

期待NoSQL的部分

106F
smile665

这个最新的v1.2.0版本确实比 第一个版本好多了 赞!~
另外,确实开源到github上也更好一些

1309316280376633 赞同
孤尽

请关注云栖大会。

评论
107F
neochang

求能出前端规范手册!

108F
wenbolwm

好东西,来收藏了

109F
musi
  1. 【推荐】集合初始化时,指定集合初始值大小。 说明:HashMap 使用 HashMap(int initialCapacity) 初始化, 正例: initialCapacity = (需要存储的元素个数 / 负载因子) + 1。 注意负载因子 (即loader factor)默认为 0.75,如果暂时无法确定初始值大小,请设置为 16。

默认就是16,为什么还要显示的指定为16?

孤尽

因为开发者必须去思考。抽样调查发现,也只有三分之一的同学知道默认是16,也只有十分之一的同学知道它是以2的指数次进行resize。

评论
110F
zn123

@云木西 发现小错误
8条 Boolean 不是基本数据类型, 写错了

孤尽 赞同
孤尽

能够发现这么细微的地方,真是难得,下个版本中会进行改进。

评论
111F
j焕

发现一个(应该是)错别字。"一、命名风格"章节的"14"条,“UNKOWN_REASON”,unkown...

112F
1157936094809934

阿里巴巴Java开发手册(正式版)》更新(v1.2.0版)
(五)集合处理 "11. 【推荐】高度注意 Map 类集合 K/V 能不能存储 null 值的情况,如下表格:"有一个问题,请赶快修正:

ConcurrentHashMap 不允许为 null 不允许为 null AbstractMap 分段锁技术 ?

在Java6与Java7中ConcurrentHashMap中是分段锁技术。
但在在Java 8中, ConcurrentHashMap已经不是采用分段锁方式来控制并发的粒度了!

1157936094809934 赞同
113F
1127086050365328

呵呵 java官方提了么?

关注
云木西
云计算、大数据、人工智能技术之路上的徒步者
55篇文章|447关注
大数据开发套件(Data IDE),提供可视化开发界面、离线任务调度运维、快速数据集成、多人协同工作等功能,为您... 更多>

凝聚阿里巴巴多年来在无线业务安全防御的成功经验和技术成果,并面向开发者和企业提供安全扫描、应用加固、安全组件、数... 更多>

云数据库HybridDB(ApsaraDB HybridDB)是一种在线MPP大规模并行处理数据仓库服务。云数据... 更多>

为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效率,降低 IT 成本... 更多>
2017杭州云栖大会火热抢票

2017杭州云栖大会火热抢票