时隔一年多,再次开始更新博客,各位粉丝们久等了.大家是不是以为我像大多数开发者一样三分钟热度,坚持了一年半载就放弃了,其实不是.在过去的一年时间我学习了<Java编程思想>这本书,因为都是写基础性的东西,所以没必要在博客上写出来.现在终于把700多页的编程思想看完了,回归博客,开始整理一波Java开发手册. 1.类名使用 UpperCamelCase 风格,但以下情形例外:DO / BO / DTO / VO / AO /PO / UID 等 2.方法名.参数名.成员变量.局部变量都统一使用…
一.编程规约 (一) 命名规约 1.[强制] 代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束.(代码规范,易读) 反例: name / __name / $Object / name / name$ / Object$ 2.[强制] 代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式. 说明:正确的英文拼写和语法可以让阅读者易于理解,避免歧义.注意,即使纯拼音命名方式 也要避免采用.(代码规范,易读) 反例: DaZhePromotion [打折] /…
前言 在阅读<阿里巴巴Java开发手册>时,看到命名规则中有这样一条 虽然知道这些是根据Java对象的角色所分配名称的后缀,但是没有弄清楚分别是什么意思,日常开发中也没有使用到. 网上查找了一些资料,但是感觉大多数都是一样的,可能大家都是互相copy,篇幅过长并且不易理解. 别灰心!<阿里巴巴Java开发手册>中对于上面这些在领域模型的命名使用上给出了规范,说的很清楚,分享给大家. 领域模型命名规约 1.数据对象:xxxDO,xxx即为数据表名: 2.数据传输对象:xxxDTO,x…
(三) 格式规约 1. [强制]大括号的使用约定.如果是大括号内为空,则简洁地写成{}即可,不需要换行:如果是非空代码块则: 1) 左大括号前不换行.行. 2) 左大括号后换行. 3) 右大括号前换行. 4) 右大括号后还有else等代码则不换行:表示终止右大括号后必须换行. 2. [强制] 左括号和后一个字符之间不出现空格:同样,右括号和前一个字符之间也不出现空格.详见第5条下方正例提示. 3. [强制]if/for/while/switch/do等保留字与左右括号之间都必须加空格. 4. […
1. [强制]类.类属性.类方法的注释必须使用 Javadoc 规范,使用/**内容*/格式,不得使用 //xxx 方式. 说明:在 IDE 编辑窗口中,Javadoc 方式会提示相关注释,生成 Javadoc 可以正确输出相应注 释:在 IDE 中,工程调用方法时,不进入方法即可悬浮提示方法.参数.返回值的意义,提高 阅读效率. 2. [强制]所有的抽象方法(包括接口中的方法)必须要用 Javadoc 注释.除了返回值.参数. 异常说明外,还必须指出该方法做什么事情,实现什么功能. 说明:对子…
1.不要使用 count(列名)或 count(常量)来替代 count(*),count(*)是 SQL92 定义的标准统计行数的语法,跟数据库无关,跟 NULL 和非 NULL 无关. 2.count(distinct col) 计算该列除 NULL 之外的不重复行数,注意 count(distinct col1,col2) 如果其中一列全为 NULL,那么即使另一列有不同的值,也返回为 0. 3.当某一列的值全是 NULL 时,count(col)的返回结果为 0,但 sum(col)的返…
1.用户敏感数据禁止直接展示,必须对展示数据进行脱敏.例如手机号.银行卡号等,中间要用*隐藏. 2.发贴.评论.发送即时消息等用户生成内容的场景必须实现防刷.文本内容违禁词过滤等风控策略,一般是用验证码来拦截. 3.禁止向 HTML 页面输出未经安全过滤或未正确转义的用户数据.需要将敏感信息隐藏,并且将程序中的默认的字段转换为用户看得懂的实际字段. 4.MySQL 在 Windows 下不区分大小写,但在 Linux 下默认是区分大小写.因此,数据库名.表名.字段名,都不允许出现任何大写字母,避…
 不为过去蹉跎,改变当下. 为什么开篇就送这么一句话给大家,我相信很多处于1-3年码龄的哥们儿们,在平时的编码历程中编码的个性可能是多彩的,每个人都有每个人特定的风格,但是我们现在这么随意写,以后这么随意写,好没问题,但是等你离开这个公司了或者是去开发别的项目了,再等别人过来接手维护你一手写出来的这段个性十足的代码时,那么你的右眼皮时不时地就会跳,因果我就不说了~~ 所以我建议看到这篇博文的朋友们,或许你稍微改变一下你的编码风格,遵从一套好的编码规约对己对人都是有好处的.可能朋友的公司也有专门的…
之前在乐视天天研究各种底层高大上的东西,因为我就一个人,想怎么弄怎么弄.如今来了新美大,好好研读一下<阿里巴巴Java开发手册v1.2>.还要对这么看似简单的东西解析一番.毕竟现在带团队,讲究团队合作.现在项目稍微有点乱,早统一,代价越低.别问我乐视是不是不行了.乐视好的很,已经到了谷底,该反弹了,看好乐视.我离开是因为自己的技术瓶颈,要是乐视像去年发展的那么好,我估计离开的更早. 我自己本身其实就是不怎么讲究章法的人.也没打算拿什么去约束大家.我跟领导谈学习这个手册的事情.领导比较担心的是怎…
阿里巴巴Java开发手册1.7.0(嵩山版) 一.编程规约 (一)命名风格 所有命名不得以下划线和$开始和结束. 所有命名不得以拼音或拼音英文混合. 类名使用UpperCamelCase风格. 方法名.参数名.成员变量.局部变量都统一使用lowerCamelCase风格. 常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长. 抽象类命名使用 Abstract 或 Base 开头:异常类命名使用 Exception 结尾: 测试类命名以它要测试的类的名称开始,以 Test 结…
(一)命名风格 3. [强制]类名使用 UpperCamelCase 风格,但以下情形例外:DO / BO / DTO / VO / AO / PO / UID 等. 正例:MarcoPolo / UserDO / XmlService / TcpUdpDeal / TaPromotion 反例:macroPolo / UserDo / XMLService / TCPUDPDeal / TAPromotion 6. [强制]抽象类命名使用 Abstract 或 Base 开头:异常类命名使用…
# Java开发手册-编程规约精选 ## 总约 - 采用驼峰写法 ## 变量 - 首字母小写 ## 方法 - 方法名首字母小写- 参数首字母小写 ## 引用 - <阿里巴巴Java开发手册>…
Java开发手册版本更新说明 专有名词解释 一. 编程规约 (一) 命名风格 (二) 常量定义 (三) 代码格式 (四) OOP 规约 (五) 集合处理 (六) 并发处理 (七) 控制语句 (八) 注释规约 (九) 其它 Java开发手册版本更新说明 版本号 版本名 更新日期 备注 1.3.0 终极版 2017.09.25 单元测试规约,IDE代码规约插件 1.3.1 纪念版 2017.11.30 修正部分描述 1.4.0 详尽版 2018.05.20 增加设计规约大类,共16条 1.5.0 华…
<阿里巴巴Java开发手册>: https://github.com/alibaba/p3c/blob/master/%E9%98%BF%E9%87%8C%E5%B7%B4%E5%B7%B4Java%E5%BC%80%E5%8F%91%E6%89%8B%E5%86%8C%EF%BC%88%E7%BB%88%E6%9E%81%E7%89%88%EF%BC%89.pdf 下面主要来介绍一下如何安装.使用eclipse和idea插件. 一.eclipse插件 ①准备 Eclipse Juno+ JD…
先上干货,<阿里巴巴Java开发手册>的下载地址 https://yq.aliyun.com/articles/69327?spm=5176.100239.blogcont69327.158.xUUgiz&p=2#comments 下面分几个部分对这个手册进行说明,都是个人的见解,本人技术一般,如果有错误或者不妥,请评论指出,虚心接受,提前感谢了. 建议边看手册,边食用以下说明,效果比较好. 前言 首先当我第一次看见这个的手册的时候或许和和你们是一样激动的,因为在java行业内我还没有…
2016年底的时候阿里巴巴公开了其在内部使用的Java编程规范.随后进行了几次版本修订,目前的版本为v1.0.2版.下载地址可以在其官方社区-云栖社区https://yq.aliyun.com/articles/69327找到. 笔者作为一名有数年工作经验的Java程序员,仔细研读了这份手册,觉得其是一份不可多得的好材料.阿里巴巴在发布时所说,"阿里巴巴集团推出的<阿里巴巴Java开发手册(正式版)>是阿里巴巴近万名开发同学集体智慧的结晶,以开发视角为中心,详细列举如何开发更加高效.…
Java作为一门名副其实的工业级语言,语法友好,学习简单,大规模的应用给代码质量的管控带来了困难,特别是团队开发中,开发过程中的规范会直接影响最终项目的稳定性. 善医者“未有形而除之”,提高工程健壮性最好的方式是在代码出现问题之前就排除掉,不给Bug出现的机会.一份好的开发规范就可以起到这样的作用,大大减少产品上线后的问题. <阿里巴巴Java开发手册>是阿里巴巴的内部编码规范,阿里官方的Java代码规范标准, 手册以Java应用开发为维度,分为编程规约.异常日志规约.MYSQL规约.工程规约…
前几天,阿里巴巴发布了<阿里巴巴Java开发手册(正式版>,第一时间下载阅读了一番. 不同于一般大厂内部的代码规范,阿里巴巴的这本Java开发手册,可谓包罗万象,几乎日常Java开发中方方面面都有所涉及. 在知乎上,也有关于这本开发手册的讨论十分热烈的帖子. 由于里面涉及的内容比较多,下面重点罗列下一些我读过之后十分赞同与持保留意见的条目: (一)编码规范 (一)命名规约 8. [强制]POJO 类中布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错误. 反例:定义为基本数据类型b…
首先,把昨天那俩条sql语句的优化原因给大家补充一下,第一条效率极低,第二条优化后的,sql语句截图如下: 经过几个高手的评论和个人的分析: 第一条sql语句查询很慢是因为它首先使用了in关键字查询,导致全表扫描,其次我那条sql语句的写法上,是通过子查询根据某一个字段去不断匹配后面查询到的集合数据,最后得到查询结果,这一系列操作下来效率上去才怪呢. 但是第二条sql语句是通过连接查询,根据建立了索引的字段来等值匹配,最后得到查询结果,速度杠杠的.(一次小小的优化经历,学到了). 今天(2017…
下载原版阿里JAVA开发手册  [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文难度系数为三星(★★★) 本文为第二篇 第一篇 点评阿里JAVA手册之编程规约(命名风格.常量定义.代码风格.控制语句.注释规约) 码出高效.码出质量. 代码的字里行间流淌的是软件生命中的血液,质量的提升是尽可能少踩坑,杜绝踩重复的坑,切实提升质量意识.另外,现代软件架构都需要协同开发完成,高效协作即降低协同成本,提升沟通效率,所谓无规矩不成方圆,无规范不能协作.…
下载原版阿里JAVA开发手册  [阿里巴巴Java开发手册v1.2.0] 本文主要是对照阿里开发手册,注释自己在工作中运用情况. 本文难度系数为一星(★) 码出高效.码出质量. 代码的字里行间流淌的是软件生命中的血液,质量的提升是尽可能少踩坑,杜绝踩重复的坑,切实提升质量意识.另外,现代软件架构都需要协同开发完成,高效协作即降低协同成本,提升沟通效率,所谓无规矩不成方圆,无规范不能协作.众所周知,制订交通法规表面上是要限制行车权,实际上是保障公众的人身安全.试想如果没有限速,没有红绿灯,谁还敢上…
终极版 v1.3.0 2017年开春之际,阿里诚意献上重磅大礼:<阿里巴巴Java开发手册>,首次公开阿里官方Java代码规范标准.这套Java统一规范标准将有助于提高行业编码规范化水平,帮助行业人员提高开发质量和效率.大大降低代码维护成本. 至今为止已更迭了三个版本,2017年9月25日,阿里巴巴Java开发手册(终极版)>正式发布,这是史上内容最全.修正最为彻底的一个版本,并且增加了单元测试规约内容,这也是阿里官方对外发布的最后一个PDF版本,值得收藏. <阿里巴巴Java开发…
趁着有时间把阿里巴巴Java开发手册又看了一遍了,很多时候觉得看完之后,发现自己好像一点都不记得了里面的内容了.只能把大概内容画一遍在脑子里形成一张图方便记忆,这样就更能够记得自己的看完的内容了.其中有许多是比较基础的内容,我就只画了自己相对不熟悉的内容,方便自己学习记忆. 一.总图 二.编程规约 三.异常日志 四.单元测试 五.安全规约 六.MySQL数据库 七.工程结构…
2016年底的时候阿里巴巴公开了其在内部使用的Java编程规范.随后进行了几次版本修订,目前的版本为v1.0.2版.下载地址可以在其官方社区-云栖社区https://yq.aliyun.com/articles/69327找到. 笔者作为一名有数年工作经验的Java程序员,仔细研读了这份手册,觉得其是一份不可多得的好材料.阿里巴巴在发布时所说,"阿里巴巴集团推出的<阿里巴巴Java开发手册(正式版)>是阿里巴巴近万名开发同学集体智慧的结晶,以开发视角为中心,详细列举如何开发更加高效.…
偶然看到阿里巴巴居然出书了???趁着满减活动(节约节约....)我赶紧买来准备看看,刚拿到的时候掂量了好多下,总觉得商家给我少发了一本书,结果打开才知道..原来这本书这么小.... 编码规范的重要性 别人都说我们是搬砖的码农,但我们知道自己是追求个性的艺术家.也许我们不会过多在意自己的外表和穿着,但在我们不羁的外表下,骨子里追求着代码的美.系统的美.设计的美,代码规范其实就是一个对程序美的定义.-- 引自 序 如果有一天在我们的项目中看到了这样的代码: 或者是这样的代码: 这样美不美呢?或许看着…
前言 只有光头才能变强 前一阵子一直在学Redis,结果在黄金段位被虐了,暂时升不了段位了,每天都拿不到首胜(好烦). 趁着学校校运会,合理地给自己放了一个小长假,然后就回家了.回到家才发现当时618买了一堆书,这堆书还有没撕包装的呢....于是我翻出了最薄的一本<阿里巴巴 Java开发手册> 这本书一共就90多页,一天就可以通读完了,看完之后我又来水博文了. 注意: 书上很多的规范是可以用IDE来避免的,也有很多之前已经知道的了. 所以,这篇文章只记录我认为比较重要,或者说是我之前开发时没有…
2017年开春之际,诚意献上重磅大礼:阿里巴巴Java开发手册,首次公开阿里官方Java代码规范标准.这套Java统一规范标准将有助于提高行业编码规范化水平,帮助行业人员提高开发质量和效率.大大降低代码维护成本. 点击下载<阿里巴巴Java开发手册>:https://yq.aliyun.com/attachment/download/?id=1173 (点击参与话题讨论:Java开发者们,一起来聊聊大家的开发规约吧) 你是否曾因Java代码规范版本纷杂而无所适从? 你是否想过代码规范能将系统故…
http://blog.jobbole.com/110427 阿里巴巴Java开发手册(终极版)https://pan.baidu.com/s/1c1UQM7Q 阿里巴巴Java开发规约插件p3cGitHub:https://github.com/alibaba/p3c Alibaba Java Coding Guidelineshttps://github.com/alibaba/p3c/blob/master/idea-plugin java & android 开发规范手册https://…
下载地址:(最新纪念版 2017-11-30 V1.3.1) <阿里巴巴Java开发手册>是阿里巴巴集团技术团队的集体智慧结晶和经验总结,经历了多次大规模一线实战的检验及不断的完善,系统化地整理成册,回馈给广大开发者.现代软件行业的高速发展对开发者的综合素质要求越来越高,因为不仅是编程知识点,其它维度的知识点也会影响到软件的最终交付质量.比如:数据库的表结构和索引设计缺陷可能带来软件上的架构缺陷或性能风险:工程结构混乱导致后续维护艰难:没有鉴权的漏洞代码易被黑客攻击等等.所以本手册以Java开…
码出高效,阿里巴巴JAVA开发手册1.4.0阅读笔记 一.编程规约(三) 代码格式// 关键词if与括号之间必须有一个空格,括号内的f与左括号,0与右括号不需要空格 if (flag == 0) { System.out.println(say); } 6. [强制]注释的双斜线与内容之间有且仅一个空格. 正例: // 这是示例注释,请注意在双斜线之后有一个空格 String ygb = new String(); (四) OOP规约1. [强制]避免通过一个类的对象引用访问此类的静态变量或静态…