使用Typescript封装一款装饰器风格的Nodejs Web框架

说着也是奇怪,nodejs发展那么多年了,基础框架依旧横行霸道,当你提到nodejs的时候肯定会有人说koa/express 云云,然后随便搜索一下教程,就是教你如何制作一款博客。


诚然,nodejs强大的能力可不是给大家单单用来制作一款博客的...


无论是express还是koa,都是属于基础框架。我认为基础框架和企业级框架有两点是不同的:

  • 基础框架没有任何的限制和约束,开发者可以以任意风格书写自己的代码,业务逻辑
  • 企业级框架特别繁琐


没有任何约束的框架在一开始的时候会非常的爽快,开发几个demo,手到擒来,但是一旦代码真正上去的时候(而且一定会),你就会发现,大量重复的操作,重复的逻辑,以及无法做单元测试。导致项目的复杂度越来越高,代码越来越丑,非常的难以维护。


为框架添加一些约束,就会增加其难用程度,学习成本变高,很多新手就会觉得:哎哟,我这样写逻辑也是可以的嘛,为什么要搞那么复杂?


编程就是这样,如果你真正接触过一个从零到有的项目,你就会知道,很多东西你刚开始逃避的,到最后你就得全部加回来,一个不少!话虽如此,跑题有甚,今天我们就来看看,如何将基础框架koa变成一款低端的企业级框架



教程特色

  1. Typescript:使用TS写成,使用装饰器(@)进行路由。
  2. 面向对象:controller和service全部以类方式书写
  3. 如何拓展koa的实例和koa的context对象
  4. 讲解controller和service的生命周期(与egg相同)
  5. 使用高级Api去处理controller和service的实例,实现高性能
  6. 更好的观看体验,在gitbook上。
  7. 每一个步骤的代码,我都保存下来了
  8. 免费的,但是是骗星的,觉得有收获,就点个星,别无他求....
  9. 还没写完...写了80%,还差实战部分以及多进程架构与进程间通信

目录

项目地址:

floveluy/Burnjs​


  1. 大项目的标配Typescript · 使用Typescript封装一款基础企业级Web框架
  2. 自动编译TS与服务器自动重启 · 使用Typescript封装一款基础企业级Web框架
  3. 路由拆分 · 使用Typescript封装一款基础企业级Web框架
  4. 引入Controller与Service的概念 · 使用Typescript封装一款基础企业级Web框架
  5. Controller的实现 · 使用Typescript封装一款基础企业级Web框架
  6. Service的实现 · 使用Typescript封装一款基础企业级Web框架
  7. 优雅的处理硬编码(配置) · 使用Typescript封装一款基础企业级Web框架
  8. 小总结 · 使用Typescript封装一款基础企业级Web框架
  9. 路由去中心化 · 使用Typescript封装一款基础企业级Web框架
  10. 项目目录结构的变化 · 使用Typescript封装一款基础企业级Web框架
  11. (非必要)插件的实现 · 使用Typescript封装一款基础企业级Web框架
  12. 还欠缺的东西 · 使用Typescript封装一款基础企业级Web框架
  13. 抽离自己的框架burn.js · 使用Typescript封装一款基础企业级Web框架



这一次,每一个步骤的代码,都有了:



为了阅读更加舒适,我已经将教程和代码写在Gitbook之中。


最后

诶,又来写了一个轮子,这款轮子是是系列教程《使用Typescript封装一款装饰器风格的Web框架》配套框架,全部使用Typescript编写完成。


在教程中,你将比较深入的了解到如何使用typescript&js的面向对象封装,将koa一步步的封装成为一款类egg.js的框架。


这样,你能就更深入的了解eggjs,根基更加牢固,本教程也算是eggjs typescript的一个前置教程吧。


喜欢的,给点星星,是你给我最大的支持,感谢。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值