课程介绍
年04月27日更新
目录
Node.js的诞生Node.js到底能做什么一、后端开发二、前端开发三、原生App开发四、桌面软件开发Node.js的性能如何?
这集来聊什么是Node.js,看看Node.js是为了解决什么问题而生的。
Node.js的诞生
先来聊聊Node.js诞生的故事。Node.js是的时候由大神RyanDahl开发的,Ryan的最初工作是使用RubyOnRails框架开发Web项目。后来他总结出一个经验,一个高性能服务器应用,应该是满足事件驱动,非阻塞I/O模型的。
Node.js的诞生。
首先第一点,Ryan发现JS语言本身的特点就是事件驱动并且是非阻塞I/O的,跟他的思路正是绝配。第二点,Chrome的JS引擎,也就是V8引擎是开源的,而且性能特别棒。于是Ryan就基于V8开发了Node.js。注意Node.js听名字好像是个JS库,其实不是的,Node.js事实上是用C++开发的。Node.js是一个基于ChromeV8引擎的Javascript运行环境
所以说Node.js不是库,是一个运行环境,或者说是一个JS语言解释器。
Node.js最初的定位是提升Ryan自己的日常工作效率,也就是用来写服务器代码的。但是后来没有想到的是Node.js在前端领域却大放异彩。
Node.js到底能做什么
一、后端开发
先说几句Node.js在服务器端的发展。Node.js的诞生带给人们的是个大大的惊喜,传统上Web开发者,前端用JS写,但是写服务器端代码的时候还必须用另外一种语言,类似Ruby/Python/PHP/Java等。但是Node.js出现之后,JS前后端通吃了。如果去网上搜Node.js的资料,很多都是用Node.js去写服务器代码的。Node.js开发后端,最著名的两个框架就是Express和Koa。
二、前端开发
Node.js今天也成为了Web前端开发必不可少的基础设施。注意,Web前端的JS代码最终还是运行在浏览器中的,所以运行的时候,或者说在产品环境下,不依赖于Node.js。但是,Node.js诞生以后,前端大爆发,类似React、Vuejs这样的前端框架的开发环境变得非常强大,Node.js是这些开发环境运行的基础。
三、原生App开发
手机App,最主要分为iOS和安卓阵营。这两个阵营里,其中iOS使用ObjectiveC或者Swift开发,安卓使用Java开发。以前我们前端开发人员,如果想做App,只能做WebApp或者混合App。实际上就是HTML代码套了一层浏览器,打包而成的App。但是这种App的用户体验不够友好。Node.js的诞生,直接促成了ReactNative的诞生,现在使用JS,咱们前端开发人员也可以开发原生App了。例如咱们ITFun的App,就是使用了ReactNative来开发的,大家有兴趣,可以在