代码规范和性格要求

非原创

在实际开发中严格使用 ESLint 做编码约束

在这些基础之上让自己做更优秀的工程师: 

创建子程序的正当理由

  • 降低代码的复杂性(将复杂业务抽离出去)
  • 避免代码重复
  • 方便类化、覆盖
  • 提高可移植性
  • 简化复杂的布尔判断
  • 改善性能(集中优化区域代码)

设计一个子程序

  • 功能具有内聚性
    • 顺序的内聚性
    • 逻辑的内聚性
  • 一个好的子程序名字
    • 描述子程序的所有事情
    • 避免使用无意义、表述不清的动词
    • 不要通过数字来区分名字一个好的子程序名字的长度是9-15
  • 子程序控制在50行之内
  • 子程序的参数
    • 按照输入、修改、输出顺序排列
    • 所有参数都要被使用
    • 把状态和配置放到最后
    • 子程序的参数控制在7个以内
  • 区分什么时候使用函数和过程(函数有参数、过程没有参数)
  • 把异常处理单独包在一个子程序中

重构

  • 重构的理由
    • 代码重复
    • 冗长的子程序
    • 循环嵌套过长或过深
    • 拥有太多的参数列表
    • 变化导致多个类都要进行修改
    • 子程序命名不恰当
    • 程序的一些代码似乎是在将来的某个时候才能用到
  • 数据级的重构
    • 用具名常量代替神秘数值
    • 使变量的名字更为清晰
    • 用函数代替表达式
    • 用多个单一用途变量代替某个多用途变量
    • 将一组类型转化为枚举类型
  • 语句级的重构
    • 分解复杂的布尔表达式
    • 将复杂的布尔表达式转化为布尔函数
    • 在嵌套的if-else中一旦知道答案就立刻返回
  • 子程序级的重构
    • 将子程序的代码内联化
    • 将冗长的子程序转化为类
    • 使用简单的算法取代复杂的算法
    • 将查询从修改操作中独立出来
    • 合并相似的子程序,通过参数进行区分功能
    • 将行为取决于参数的子程序拆分开

工程师的性格

  • 聪明和谦逊
    • 将系统分解是为了易于理解
    • 进行复查是为了减少失误
    • 将子程序编写的短小,以便逻辑更加清晰
    • 通过规范,将思路从复杂的编程中解放出来
    • 越是谦逊,进步就越快
  • 充满求知欲
    • 在开发过程中建立自我意识
    • 多试验
    • 行动前做分析和计划
    • 学习成功项目的开发经验
  • 诚实
    • 不是高手时不要假装是高手
    • 乐于承认错误
    • 透彻理解自己的程序
    • 提供现实的方案
  • 交流与合作
    • 首先和人交流,其次和机器交流
    • 彼此信任,相互帮助
  • 创造力和纪律
    • 标准和规范不是约束
    • 懂得纪律的人更值得尊重

严格要求,精益求精,才能做的更好,加油。

posted @ 2018-04-15 23:24  jyf-blog  阅读(1197)  评论(0编辑  收藏  举报