首页 存档 技术 查看内容

阿里巴巴Java开发手册流出?

2018-3-30 13:00 |来自: 互联网 320 0

摘要: 官方微博:动力节点 来源:互联网 1.不要嫌名字长 无论是方法,变量,还是函数的取名,不要嫌弃名称太长,只要能够表示清楚含义就可以了。 2.String args而不是String args,中括号是数组类型的一部分,数组定义如 ...

官方微博:动力节点

来源:互联网

1.不要嫌名字长

无论是方法,变量,还是函数的取名,不要嫌弃名称太长,只要能够表示清楚含义就可以了。


2.String[] args而不是String args[],中括号是数组类型的一部分,数组定义如下:String[] args;


在《Thinking in Java》这边书里面,是这么解释的:

大部分开发人员,习惯前一种写法。

前一种写法符合我们的口语化,我们口语通常都说:定义一个字符串数组(String 代码字符,[]代表数组)


3.POJO 类中的任何布尔类型的变量,都不要加is


POJO类中的任何布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错误。

大部分经典的书籍都有提到这一点,老话题了。


4.各层命名规约


A) Service/DAO 层方法命名规约

1) 获取单个对象的方法用 get 做前缀。

2) 获取多个对象的方法用 list 做前缀。

3) 获取统计值的方法用 count 做前缀。

4) 插入的方法用 save(推荐)或 insert 做前缀。

5) 删除的方法用 remove(推荐)或 delete 做前缀。

6) 修改的方法用 update 做前缀。


这一点确实很重要,有时候自己都做不到,规范大于编码。


5.不允许出现任何魔法值(即未经定义的常量)


String key=”Id#taobao_” tradeId;

cache.put(key, value);

魔法数值:是指在代码中直接出现的数值,而只有在这个数值记述的那部分代码中才能明确了解其含义。

在这里进行扩充下:

魔法数字的例子

Java代码



6.多个参数逗号后边必须加空格


7.开发工具编码设置


IDE 的 text file encoding 设置为 UTF-8; IDE 中文件的换行符使用 Unix 格式,不

要使用 windows 格式。


8.所有的覆写方法,必须加@Override注解


如果在抽象类中对方法签名进行修改,其实现类会马上编译报错.《Effective Java》这本书已经说的清清楚楚了,大家可以去啃啃这一节的内容。


9.提倡尽量不用可变参数编程


相同参数类型,相同业务含义,才可以使用Java的可变参数,避免使用 Object。可变参数必须放置在参数列表的最后。



10.基本数据类型与包装数据类型的使用标准


所有的POJO类属性必须使用包装数据类型。

RPC方法的返回值和参数必须使用包装数据类型。

所有的局部变量推荐使用基本数据类型。


说明:POJO类属性没有初值是提醒使用者在需要使用时,必须自己显式地进行赋值,任何NPE 问题,或者入库检查,都由使用者来保证。


正例:数据库的查询结果可能是 null,因为自动拆箱,用基本数据类型接收有 NPE 风险。

反例:某业务的交易报表上显示成交总额涨跌情况,即正负 x%,x 为基本数据类型,调用的RPC 服务,调用不成功时,返回的是默认值,页面显示:0%,这是不合理的,应该显示成中划线-。所以包装数据类型的null值,能够表示额外的信息,如:远程调用失败,异常退出。


11.序列化类新增属性时,请不要修改serialVersionUID字段


避免反序列失败


12.构造方法里面禁止加入任何业务逻辑


如果有初始化逻辑,请放在init方法中,其实这是符合一个方法只做一件事的原则。


13.POJO 类必须写 toString 方法


使用工具类 source

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部