Node.js 中基本都是异步编程,我们回想下为什么初学者很容易写出深度嵌套 callback 的代码?因为直观啊,一眼即懂。当然实际写的时候肯定不推荐 callback 套 callback,需要一个工具来把一个任务完整的串起来。
我们知道,在项目管理里面有一个很出名的理论,叫番茄工作法(不知道的自行 google),它所做的事情是把未来一段时间要做的事情都按照时间段拆分成一个个很小的任务,然后逐个完成。
stepify 设计思路和番茄工作法有些类似,都是先定义好了任务最后再执行,不同的是前者以单个异步操作作粒度划分,后者只是以时间划分。