代码性能指标

34 阅读2分钟

1、健壮性

抗击风险和bug的能力、

  • 目的:
    • 避免和程序无关的因素,导致代码报错
    • 快速给出问题反馈
    • 不至于因为非必要性bug,导致程序执行中断
  • 保障健壮性
    • 参数做好默认值,做好检测
    • 程序做好意外情况处理

2、可读性

  • 代码结构清晰
  • 他人能看懂你的意思
  • 优化丑陋的结构
  • 遵循匿名规范
  • 写好注释

编程规范

1、面向过程

先做这个,再做那个,然后做什么

2、面向对象

把功能组织成对象,然后相关操作作为对象的方法

3、函数式编程

把功能分解为一系列独立的函数,通过函数之间相互调用来完成功能

4、为什么要函数式编程

  • 提高复用性和可扩展性
  • 设计业务逻辑的代码还是面向对象
  • tree-shaking
    • 通过文档流的方法引入判断是否使用某个方法

5、函数式编程要求

  • 保证纯函数:一个函数的返回结构只依赖于他的参数,同样的输入必定由同样的输出
  • 减少函数副作用:函数会影响外部的数据,如果是全局变量

6、compose函数

方便我们连续执行方法,把自己调用传值的过程封装起来,我们只需要告诉compose函数我们执行哪些方法,他会自动执行

实际开发过程借助js原生api

使用promise来组成链式调用,和面向对象的链式调用是由区别的

7、高阶函数

原生的高阶函数

  • forEach和Map
  • reduce
  • filter

注意点

  • 保持纯函数减少函数副作用
  • 调用选择call还是apply

8、函数柯里化

把接受多个参数的函数变成接收单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数而且返回结果的新函数技术。

柯里化意义:

  • 不方便传入参数
  • 方法多次调用参数固定