提交 c2e99f16 编写于 作者: 222000329甘佳欣's avatar 222000329甘佳欣

Update codestyle.md

上级 021bd43f
1、前端代码规范
[百度前端代码规范]<https://github.com/ecomfe/spec>
https://github.com/ecomfe/spec
1.1 缩进与换行
使用 4 个空格做为一个缩进层级,不允许使用 2 个空格 或 tab 字符。
1.2 命名
class 必须单词全字母小写,单词间以 - 分隔。
class 必须代表相应模块或部件的内容或功能,不得以样式信息进行命名。
元素 id 必须保证页面唯一。
id 建议单词全字母小写,单词间以 - 分隔。同项目必须保持风格一致。
id、class 命名,在避免冲突并描述清楚的前提下尽可能短。
1.3 DOCTYPE
使用 HTML5 的 doctype 来启用标准模式,建议使用大写的 DOCTYPE。
1.4 编码
页面必须使用精简形式,明确指定字符编码。指定字符编码的 meta 必须是 head 的第一个直接子元素。
1.5 标签
标签名必须使用小写字母。
对于无需自闭合的标签,不允许自闭合。
标签使用必须符合标签嵌套规则。
HTML 标签的使用应该遵循标签的语义。
1.6 属性
属性名必须使用小写字母。
属性值必须用双引号包围。
2、后端代码规范
[阿里巴巴后端代码规范]<https://github.com/alibaba/p3c>
https://github.com/alibaba/p3c
2.1 命名
代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。
代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。
方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,必须遵从驼峰形式。
常量命名全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。
抽象类命名使用 Abstract 或 Base 开头;异常类命名使用 Exception 结尾;测试类命名以它要测试的类的名称开始,以 Test 结尾。
POJO 类中布尔类型变量都不要加 is 前缀,否则部分框架解析会引起序列化错误。
包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用单数形式,但是类名如果有复数含义,类名可以使用复数形式。
2.2 代码格式
如果是大括号内为空,则简洁地写成{}即可,大括号中间无需换行和空格;如果是非空代码块则:
左大括号前不换行。
左大括号后换行。
右大括号前换行。
右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行。
if/for/while/switch/do 等保留字与括号之间都必须加空格。
采用 4 个空格缩进,禁止使用 tab 字符。
注释的双斜线与注释内容之间有且仅有一个空格。
2.3 OOP规约
避免通过一个类的对象引用访问此类的静态变量或静态方法,无谓增加编译器解析成本,直接用类名来访问即可。
所有的覆写方法,必须加@Override 注解。
所有整型包装类对象之间值的比较,全部使用 equals 方法比较。
浮点数之间的等值判断,基本数据类型不能用==来比较,包装数据类型不能用 equals 来判断。
定义数据对象 DO 类时,属性类型要与数据库字段类型相匹配。
2.4 控制语句
在一个 switch 块内,每个 case 要么通过 continue/break/return 等来终止,要么注释说明程序将继续执行到哪一个 case 为止;在一个 switch 块内,都必须包含一个 default 语句并且放在最后,即使它什么代码也没有。
在 if/else/for/while/do 语句中必须使用大括号。
2.5 注释规约
类、类属性、类方法的注释必须使用 Javadoc 规范,使用/*内容/格式,不得使用// xxx 方式。
所有的抽象方法(包括接口中的方法)必须要用 Javadoc 注释、除了返回值、参数、异常说明外,还必须指出该方法做什么事情,实现什么功能。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册