初识 Farrow
✒️

初识 Farrow

Tags
typescript
node
Update
Aug 26, 2021 06:07 PM
Create
Aug 5, 2021 05:12 AM
看了一下字节开源的后端框架,主打类型安全。
他的设计和Koa 很像,没有引入很多Java中设计模式的概念(比如 nestjs 的 Ioc等)。
为了保证类型安全主要做了一下几件事:
  • 函数式,中间件返回新的 response 代替 koa 直接在 ctx 上修改,以此避免产生副作用污染类型。
  • 使用类型体操推到出 params, query 等类型,保证开发时正确的类型推到
    • 比如 `<arg0:int>` 经过类型体操就可以推导出 `{arg0: number}`的类型了
  • 结合 farrow-scheme 校验器保证运行时的类型海泉