今年年初,<阿里巴巴Java开发手册>正式发布,阿里官方Java代码规范标准首次对外公开.手册发布之后在业界.学术界都获得了广泛的关注,仅微博浏览量就突破千万,下载访问量超过40万,多家媒体主动转发,并将其称为“Java工程师必备宝典”. 在收集外部建议和阿里内部经验更新的基础上,阿里规约项目组正式推出<阿里巴巴Java开发手册>1.2.0升级版,堪称史上最完善版本. 点击下载<阿里巴巴Java开发手册>(v1.2.0版):https://yq.aliyun.com/a…
编码规范插件安装使用指南 阿里技术公众号公布的<阿里巴巴Java开发规约>,瞬间引起全民代码规范的热潮,后又发布了PDF的终极版,大家踊跃留言,期待配套的静态扫描工具开放出来. 为了让开发者更加方便.快速将规范推动并实行起来,阿里巴巴基于手册内容,研发了一套自动化的IDE检测插件(IDEA.Eclipse).该插件在扫描代码后,将不符合规约的代码按Blocker/Critical/Major三个等级显示在下方,甚至在IDEA上,还基于Inspection机制提供了实时检测功能,编写代码的同时也…
版权声明:本文出自汪磊的博客,转载请务必注明出处. 本篇继续上一篇<阿里巴巴Android编码规范>阅读纪要(一) ,还是建议各位同学有时间完整阅读一下<阿里巴巴Android编码规范>,如果实在没时间,就看我的本系列博客吧,主要摘录一些个人认为比较重要的地方. UI 与布局部分 1,不能使用 ScrollView 包裹 ListView/GridView/ExpandableListVIew;因为这样会把 ListView 的所有 Item 都加载到内存中,要消耗巨大的内存和 c…
今天发现阿里巴巴搞了个java开发规范,然后火了: 然后发现我也整了一下: 阿里巴巴java开发规范宣传页: http://mp.weixin.qq.com/s/IbibsXlWHlM59kfXJqRvZA 现在要搞的只是myeclipse的java规范检查安装: --安装过myeclipse插件的一看就懂的(我只是补充一下截图): 插件地址: https://p3c.alibaba.com/plugin/eclipse/update 第一步:打开myeclipse下载工具 Help >> I…
之前已经推荐过Google的Java编码规范英文版了: http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 虽然这篇文章的英文很简单,但是最近发现有人翻译了这篇文章,所以专门写一篇文章推荐一下: http://hawstein.com/posts/google-java-style.html 同时为了避免原始文章丢失,所以转了一下: 作者:Hawstein出处:http://hawstein.com/posts/goo…
1. 谷歌Java编码规范 http://google-styleguide.googlecode.com/svn/trunk/javaguide.html 2. 下载配置文件: https://code.google.com/p/google-styleguide/source/browse/trunk/eclipse-java-google-style.xml 3. Eclipse配置方式:…
编码规范体现出一个开发者的基本素质,良好的编码规范可以提高团队编码的效率,避免很多不必要的问题.今天分享一个标准的Java编码规范给大家,希望对于大家今后的开发工作带来帮助. 编码规范的意义         在项目开发维护中,编码规范作为开发规范的一个组成部分,是十分重要和必须的,它不仅仅是为了提高开发效率,也有利于降低后期维护开发的成本.编码规范的根本目的就是要让不仅代码可以一目了然,也可以很容易的理解开发人员所编写的代码程的用途和意义.由此,用来减少项目中因为开发维护人员的更替或由于长时间不…
版权声明:本文出自汪磊的博客,转载请务必注明出处. 2月28日阿里巴巴首次公开内部安卓编码规范,试想那么多业务线,开发人员,没有一套规范管理起来是多么麻烦,以下是个人阅读Android基本组件部分过程中觉得不错的地方,摘录下来. Android基本组件部分 1,Activity#onSaveInstanceState()方法不是Activity生命周期方法,也不保证一定会被调用.它是用来在Activity被意外销毁时保存UI状态的,只能用于保存临时性数据,例如UI控件的属性等,不能跟数据持久化存…
详细,全面 很不错 阿里 Java编码规范…
阿里巴巴java开发规范插件 作为JAVA开发人员,始终没有一个明确的规范,何为好代码,何为坏代码,造成不同人的代码风格不同,接手别人代码后改造起来相当困难.前不久,阿里巴巴发布了<阿里巴巴Java开发手册>得到了业界一致好评,于是,阿里再次发力,完成了基于<阿里巴巴Java开发手册>的插件.有IDEA.Eclipse两个版本,并且支持中英双语,使用起来非常简单高效.官方[Github仓库]:https://github.com/alibaba/p3c 插件安装环境:JDK1.8,…
为使开发人员养成良好的开发习惯,编写可读性强.易维护的程序,结合以往资料,现整理Java编码规范,将之作为开发人员的参照依据. 一.排版 1.相对独立的程序块之间必须加空行 下列情况应该使用一个空行: 两个方法之间 方法内的局部变量和方法的第一条语句之间 块注释或单行注释之前 一个方法内的两个逻辑段之间 2.单行长度不超过120个字符,如超出则换行,且操作符应放在行首,新行要有相对缩进 3.多个参数之间,二元运算符左右,for语句表达式之间应用空格隔开 表达式之间用空格隔开 4.多个短语句不要写…
前言 如今,代码规范几乎是当下稍有追求的团队都要求做到的,但是对于Java编码规范,不同的公司或团队却有着不同的标准.尽管官方提供了一些标准,但是在基本规则的基础上,各大公司又有自己的规范,比如Sun,Google,华为,阿里等都推出了自己的规范标准,所以对规范进行定制,是常有的需求.而CheckStyle就是这样一款优秀的代码规范审查工具,它允许用户自定义审查标准,而无需人工审查,也无需受限于某一套规则.CheckStyle提供了命令行和插件两种使用方方式,本文将结合Android Studi…
阿里巴巴Java编程规范考试 今天在阿里云官网把阿里巴巴Java编程规范认证考试考过了, 写下这篇文章总结一下考试中需要注意的知识点, 主体内容还是要直接看规范: 编程规约 异常日志 单元测试 安全规约 MySQL数据库 工程结构 编程规约 类名使用UpperCamelCase风格, 但以下情形例外: DO / BO / DTO / VO / AO / PO 等, 如UserDO等.在阿里巴巴Java编程规范中POJO(Plain Ordinary Java Object)专指只有setter…
2017年开春之际,诚意献上重磅大礼:阿里巴巴Java开发手册,首次公开阿里官方Java代码规范标准.这套Java统一规范标准将有助于提高行业编码规范化水平,帮助行业人员提高开发质量和效率.大大降低代码维护成本. 点击下载<阿里巴巴Java开发手册>:https://yq.aliyun.com/attachment/download/?id=1173 (点击参与话题讨论:Java开发者们,一起来聊聊大家的开发规约吧) 你是否曾因Java代码规范版本纷杂而无所适从? 你是否想过代码规范能将系统故…
前几天,考了阿里编码规范刚好80险过,总结出以下例题,答案有错,欢迎评论 1.关于方法的返回值是否可以为null,下列说法正确的是(BCD) A.方法的返回值可以为null,如果是集合,必须返回空集合 B.方法的返回值可以为null,不强制返回空集合,或者空对象等 C.方法实现者必须添加注释,充分说明什么情况下会返回null值 D.防止NPE是调用者的责任 2.如何处理单元测试产生的数据,下列说法正确的是(AC) A.测试数据入库时加特殊前缀标识 B.测试数据使用独立的测试库 C.自动回滚单元测…
应小组要求,开发测试都需要考阿里编码规范,因此,相当于是突击了一下关于编码规范方面的知识,目前做的项目后期需要进行项目迁移,数据迁移,功能迁移... 各种迁移... 阿里巴巴编码规范(Java)考试地址:https://edu.aliyun.com/course/417/lesson/list 阿里Java代码规范标准学习笔记: https://www.jianshu.com/p/59f5a5cbdf7c 额...别说这些有的没的,总之,我是过了哟...哈哈哈哈哈哈哈...原谅我笑的跟个傻纸似的…
原文:google.github.io/styleguide/javaguide.html 译者:Hawstein 来源:hawstein.com/2014/01/20/google-java-style/ 这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格. 与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题, 同时也讨论一些约定及编码标准.然而,这份文档主要侧重于我们所普遍遵…
这份文档是 Google Java 编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格.原文:google.github.io/styleguide/javaguide.html 译者:Hawstein 来源:hawstein.com/2014/01/20/google-java-style/ 与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题, 同时也讨论一些约定及编码标准.然而,这份文档主要侧重于我们所普遍…
原文地址:http://www.dahuatu.com/1225/988516.html 原文地址:http://www.dahuatu.com/1225/988516.html 原文地址:http://www.dahuatu.com/1225/988516.html 前言 这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格. 与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题,…
这份文档是Google Java编程风格规范的完整定义.当且仅当一个Java源文件符合此文档中的规则, 我们才认为它符合Google的Java编程风格. 与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题, 同时也讨论一些约定及编码标准.然而,这份文档主要侧重于我们所普遍遵循的规则, 对于那些不是明确强制要求的,我们尽量避免提供意见. 1.1 术语说明 在本文档中,除非另有说明: 1.术语class可表示一个普通类,枚举类,接口或是annotation类型(@interface…
编码规范对于开发人员来说是非常重要的,有以下几个原因: 1.一个软件的生命周期中,80%的花费在于维护 2.几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护 3.编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新的代码 4.如果你将源码作为产品发布,就需要确任它是否被很好的打包并且清晰无误,一如你已构建的其它任何产品 5.为来自不同的项目组或个人提供标准的代码格式. 6.增加易读性. 在不用Java两年多后因工作需要我又要转入Java开发,为此我整理出下面的编码规范,…
本文转自:http://www.javaranger.com/archives/390 文章总结出了java编码过程中的一些规范,以便参考. 1.合理组织代码层次,分层清晰:controller.logic.dao.对第三方接口(包括公司接口)的调用:各层要继承基类或实现接口 2.先定义方法原型,再实现方法体 3.理想的方法,是不可拆分的.原子的一个逻辑实现,具有一个明确的职责 4.方法体不超过70行,类体不超过500行 5.类名称.变量名称.方法名称,遵循简单明确,知名见义原则.建议不带数字,…
先由Sun制定,之后Sun把Java卖给了Oracle,最后就成了Oracle制定的了.但是版本比较旧了,停留在1999年. 相比Google的编码规范,罪名写的却别就是Sun采用的是4个空格进行缩进. 参考文档:http://www.oracle.com/technetwork/java/javase/documentation/codeconvtoc-136057.html(可以采用谷歌翻译) 中文版本:http://blog.csdn.net/foxcai/article/details/…
这份文档是 Google Java 编程风格规范的完整定义.当且仅当一个 Java 源文件符合此文档中的规则, 我们才认为它符合 Google 的 Java 编程风格. 与其它的编程风格指南一样,这里所讨论的不仅仅是编码格式美不美观的问题, 同时也讨论一些约定及编码标准.然而,这份文档主要侧重于我们所普遍遵循的规则, 对于那些不是明确强制要求的,我们尽量避免提供意见. 01 术语说明和指南说明 在本文档中,除非另有说明: 1.术语class可表示一个普通类,枚举类,接口或是annotation类…
1. Java命名约定 除了以下几个特例之外,命名时应始终采用完整的英文描述符.此外,一般应采用小写字母,但类名.接口名以及任何非初始单词的第一个字母要大写.1.1 一般概念 n 尽量使用完整的英文描述符n 采用适用于相关领域的术语n 采用大小写混合使名字可读n 尽量少用缩写,但如果用了,要明智地使用,且在整个工程中统一n 避免使用长的名字(小于 15 个字母是个好主意)n 避免使用类似的名字,或者仅仅是大小写不同的名字n 避免使用下划线(除静态常量等) 1.2 示范 包(Packa…
  Java开发手册 版本号 制定团队 更新日期 备  注 1.0.0 阿里巴巴集团技术部 2016.12.7 首次向Java业界公开 一.编程规约 (一) 命名规约 1.   [强制]所有编程相关命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束.反例: _name / __name / $Object / name_ / name$ / Object$ 2.   [强制]所有编程相关的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式.说明:正确的英文拼写和语法可以让阅…
1. 抽象类命名使用 Abstratc开头. 2. 阿里强制规定不允许任何魔法值(未经定义的常量)直接出现在代码中.魔法值会让代码的可读性大大降低,而且如果同样的数值多次出现时,容易出现不清楚这些数值是否代表同样的 含义.另一方面,如果本来应该使用相同的数值,一旦用错,也难以发现.因此可以采用以下两点,极力避免使用魔法数值. 3. 阿里推荐如果变量值仅在一个范围内变化,且带有名称之外的延伸属性,定义为枚举类.对于固定并且编译时对象,如 Status.Type 等,应该采用 enum 而非自定义常…
一.编程规约 (一) 命名规约 1. [强制]所有编程相关命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束. 反例: _name / __name / $Object / name_ / name$ / Object$ 凡是以两个或一个下划线开始,后面紧跟着一个大写字母的标识符,不管它出现在哪里,都是保留给编译程序或标准库函数使用的. 此外,凡是以一个下划线开始,后面不管跟着什么内容的标识符,如果它出现在文件范围内(即它不是出现在一个函数内),那么它也是被保留的. 如果你用一个保留…
1.       缩进排版(Indentation) 4个空格常被作为缩进排版的一个单位.缩进的确切解释并未详细指定(空格 vs. 制表符).一个制表符等于n个空格(视具体的编辑器而定,Eclipse默认一个制表符为4个字符). 3.1    行长度(Line Length) 尽量避免一行的长度超过80个字符,因为很多终端和工具不能很好处理之. 注意:鉴于Eclipse开发工具工作区的左侧和右侧都被非代码编辑器所占据,因此建议每行的代码长度不要超过70个字符. 3.2    换行(Wrappin…
数据对象分多种,为方便阅读并区分各数据对象的用途,习惯将数据对象分为以下几类,供参考: 持久对象 PO(persistant object)对象关系映射(ORM)概念的产物,基本上对象的成员变量对应了数据库中一行记录各字段的映射,方便实现ORM的持久层框架如(Ibatis)在读取数据的时候将数据库一行记录快速转换为对象供业务层使用.因此,持久对象PO里边本应该不包含逻辑,只有标配的getter和setter方法即可. 数据对象DO(data object) 或 值对象VO(value objec…