title | date | tags |
---|---|---|
Project & Coding Guide |
2016-03-02 16:33:51 -0800 |
Coding |
程序是给人读的,只是偶尔让计算机执行一下
- 团队统一编程风格
- 基本的代码格式化
- 函数/变量/文件/常量等的命名规范
- 小驼峰式命名法(首字母小写)命名函数/变量
- 大驼峰式命名法(全大写)命名文件
- 全大写+单词之间下划线连接(MAX_COUNT)命名常量
- 适时空行/换行
- 合理使用注释
- 如果代码具有一些特殊含义,且无法直接从代码中看出来,此时有必要添加注释
- 可以在函数前添加注释,对函数参数的作用进行说明
- 代码设计
- 不要有超大函数或者超大类
- 函数拆分,各个函数独立负责自己本身的职能
- 考虑重用
- 避免逻辑重复
- 同样的信息应该只在一处出现,不然会给以后的维护带来无穷无尽的烦恼
- 避免if/else嵌套过深
- 配置数据分离
- 不要有超大函数或者超大类
- 破窗理论
- 破窗:低劣的设计、错误的决策或者糟糕的代码
- 不要留着“破窗户”不修。发现一个就修一个
- 如果没有足够的时间进行适当的修理,就先把它保留起来
- 可以把出问题的代码放到注释中
- 显示“未实现”(#TODO)消息
- 用虚拟数据加以替代
- 沉默即赞同
- review代码,找不足找bug
- 及时提出意见
- 无情测试
- 代码编写优化
- 松耦合
- 抽离类似UI层,作为模板
- JavaScript模板引擎,例如handlebars.js
- 函数职能分离,各自独立,必要时引用
- 高内聚
- use let instead of var
- 避免对全局变量的依赖
- 隔离应用逻辑
- 应用逻辑是和应用功能相关的功能性代码,而不是和用户行为相关的
- 交互->触发交互函数->触发应用逻辑函数
- 不要分发事件对象
- 在函数向下传递的过程中,方法调用的接口参数应该逐渐精确化,传入明确要使用的参数,没有多余参数
- 松耦合