434
社区成员
发帖
与我相关
我的任务
分享阿里巴巴的代码规范(Java)
一、命名风格
1.代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。
反例:_name / __name / $name / name_ / name$ / name__
2.方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格。
正例: localValue / getHttpMessage() / inputUserId
3.常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。
正例:MAX_STOCK_COUNT / CACHE_EXPIRED_TIME
反例:MAX_COUNT / EXPIRED_TIME
4.包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用 单数形式,但是类名如果有复数含义,类名可以使用复数形式。
正例:应用工具类包名为 com.alibaba.ei.kunlun.aap.util、类名为 MessageUtils(此规则参考 spring 的 框架结构)
5.杜绝完全不规范的缩写,避免望文不知义。
反例:AbstractClass“缩写”成 AbsClass;condition“缩写”成 condi;Function 缩写”成 Fu,此类 随意缩写严重降低了代码的可阅读性。
二、代码格式
1.如果是大括号内为空,则简洁地写成{}即可,大括号中间无需换行和空格;如果是非 空代码块则:
1) 左大括号前不换行。 2) 左大括号后换行。 3) 右大括号前换行。 4) 右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行。
2.if/for/while/switch/do 等保留字与括号之间都必须加空格。
3.任何二目、三目运算符的左右两边都需要加一个空格。(包括赋值运算符=、逻辑运算符&&、加减乘除符号等。)
4.注释的双斜线与注释内容之间有且仅有一个空格。
正例: // 这是示例注释,请注意在双斜线之后有一个空格 String commentString = new String();5.在进行类型强制转换时,右括号与强制转换值之间不需要任何空格隔开。
正例: double first = 3.2d; int second = (int)first + 2;6.不同逻辑、不同语义、不同业务的代码之间插入一个空行分隔开来以提升可读性。
《数学之美》读后感:
在《数学之美》中,我意识到:一直以来,我们常把数学、语文这两门科目当作是性质截然不同,彼此之间互不相干的科目。在很长的一段时间里,数学可以和几乎所有人类生产生活联系在一起,比如天文学,几何学,力学等等,但是数学和语言始终是没有交集的。而现如今,随着自然语言处理技术的发展,数学和语言这两个学科正在碰撞出轰轰烈烈的花火!收获颇丰