- Koa开发:入门、进阶与实战
- 刘江虹
- 343字
- 2022-03-08 10:50:21
1.1 Koa的诞生
在介绍Koa之前,我们先了解一下Node的发展史。Node是在2009年由Ryan Dahl开发的,它基于Chrome的V8 JavaScript引擎,因为具有非阻塞、事件驱动的I/O模型和轻量级环境等特点,所以吸引了不少开发者。重要的是,Node框架可以用JavaScript进行编程,这对于前端开发者来说太友好了。
在Node诞生的第二年,也就是2010年,一款强大的Web框架诞生了,它就是Express。Express集成了中间件、路由、模板等通用能力,在使用上,为开发人员节省了很多时间,提高了开发效率,因而备受青睐。慢慢地,Express的缺点也暴露出来了——内置的能力太多,本身过于臃肿,且不易扩展。在2013年,Express的原班人马决定重新打造一款Web应用框架,于是Koa就诞生了。
Koa不再使用Node的req对象和res对象,而是封装了自己的ctx.request和ctx.response。整体实现简单、巧妙、易于扩展。在Node支持async/await语法后,Koa 2抛弃了generator/yield的写法,运用async/await,使得代码更加优雅。