年末了最近在整理文件,顺手写了一套编码规范,来源于工作和习惯。虽然程序员多不胜数,但是不是每一个程序员都写的一手好代码,不论逻辑,单是看上去就没有让人读的欲望。写代码跟写书写文档一样,简单整洁易明了是通用的原则,接触前端已经四个月,好死不死还是写了不少的代码,爬过的坑,吐过的血没有几升也有几斤。做一个优秀的程序员从写的一手好的代码开始;写的一手好代码从遵守一个好的规则开始。
==================================================================================================以下是正文:
通用规范:
命名规范:
项目:
全部采用英文 ,小写方式命名,以下划线分割。my_project_name
目录:
英文,小写,下划线分割,负数结构时要采用复数命名法。scripts,data_models
js文件:
同项目命名规则。account_model.js
CSS/SCSS文件:
同项目命名规则。retina_sprites.scss
HTML文件:
同项目命名规则。error_report.html
注释规范:
CSS/SCSS注释:
注释统一采用‘/* */’
缩进与下一行保持一致
可位于一个代码行的末尾,与代码间隔一个空格
Javastript注释
单行注释
双斜线后,必须跟一个空格;
缩进与下一行代码保持一致;
可位于一个代码行的末尾,与代码间隔一个空格。
多行注释
最少三行,‘*’后跟一个空格,在难以理解的代码段、可能存在错误的代码段、业务逻辑强相关的代码
文档注释:
对所有常量、函数、类进行注释,具体查询:http://yuri4ever.github.io/jsdoc/
接口规范
接口文档
接口描述:
接口英文名称:
接口请求方式:
请求URL:
请求参数:
字段:类的属性
说明:中文释义
类型:属性类型(String、Number、Object、Array)
是否必须:是/否
备注:
返回参数:
专项规范:
HTML规范:
- 在属性上使用双引号
- 属性名小写,用中划线分割
- 在页面开头因采用<!DOCTYPE html>声明,同时规定页面的lang属性
- 字符编码通常是'UTF-8'
- 引入CSS和JS不需要指明type
- 尽量减少标签数量,以利于重构和迭代
Javastript规范
- 最外层引用统一使用单引号
- 标准的变量命名采用驼峰式命名
- ‘ID’、‘URL’在变量名中大写
- 常量名因大写,用下划线连接
- jquery对象必须以‘$’开头命名
- 一个函数作用域中所有的变量声明尽量提到函数首部
CSS/SCSS规范
- 每个属性末尾都要添加分号
- 注释'/*'后和'*/'前要添加空格
- 每个属性独占一行
- 最外层统一使用双引号
- url内容要用引号
- 属性选择器中的属性值需要引号
- 涉及类名均使用小写字母,id属性采用驼峰式命名
- 应对属性声明进行分组,组之间留下空行
- 颜色属性采用16进制用小写字母,能简写的则简写
- 界面中不允许有空的规则,尽量少用' *'选择器
- 不要在一个文件里出现两个相同的规则
- 属性值0后不要加单位