这是我参与「第四届青训营 」笔记创作活动的第6天
Node.js
什么是Node.js
Node.js发布于2009年5月,由Ryan Dahl开发,是一个基于Chrome V8引擎的JavaScript运行环境,使用了一个事件驱动、非阻塞式I/O模型,让JavaScript 运行在服务端的开发平台,它让JavaScript成为与PHP、Python、Perl、Ruby等服务端语言平起平坐的脚本语言。 Node.js对一些特殊用例进行优化,提供替代的API,使得V8在非浏览器环境下运行得更好,V8引擎执行Javascript的速度非常快,性能非常好,基于Chrome JavaScript运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。
Node.js的应用场景
前端工程化
- Bundle: webpack, vite, esbuild, parcel
- Uglify: uglifyjs
- Transpile:bablejs,typescript
- 其他语言加入竞争:esbuild, parcel, prisma
- 现状:难以替代
Web服务端应用
- 学习曲线平缓,开发效率较高
- 运行效率接近常见的编译语言
- 社区生态丰富及工具链成熟(npm, V8 inspector)
- 与前端结合的场景会有优势(SSR)
- 现状:竞争激烈,Node.js有自己独特的优势
Electron跨端桌面应用
- 商业应用:vscode, slack, discord, zoom
- 大型公司内的效率工具
- 现状:大部分场景在选型时,都值得考虑
Node.js的应用方向
具备书写JavaScript的IDE,普通的记事本也可以进行开发。在几年的时间里,Node.js逐渐发展成一个成熟的开发平台,吸引了许多开发者。有许多大型高流量网站都采用Node.js进行开发,此外,开发人员还可以使用它来开发一些快速移动Web框架。 除了Web应用外,NodeJS也被应用在许多方面,Node.js在其它方面所开发有十大令人神奇的项目,比如涉及到应用程序监控、媒体流、远程控制、桌面和移动应用等等。