首先,直接奉上問題的答案,Node.js就是做web開發的,用來做大並發的web後端程序。在大並發編程方面主要有Node.js和golang兩種語言。

Node.js和v8引擎

Node.js是基於v8引擎,以JavaScript作為開發語言的非阻塞,事件驅動的語言。

v8引擎是由谷歌開發,用於Chrome瀏覽器的開源的JavaScript引擎。由於引入了JIT技術,編譯得到極大的完善和優化,JavaScript的執行性能得到極大的提高。v8引擎還提供「嵌入」的功能,藉助於c++,引入c++的特性和底層庫也豐富了v8的功能。

由於v8種種便利的功能,Node.js誕生了。

Node.js是一項伺服器端技術。Node.js出現以前,JavaScript語言主要用於瀏覽器客戶端,實現各種動畫,對DOM的操作等。Node.js的出現,使得前後端使用同一種語言,統一模型得以實現。 這也就是現在前端們愛給自己打一個全棧開發標籤的原因,就是會前端會,Node.js。

Node.js是具有非阻塞,事件驅動的JavaScript運行環境,可以構建高並發的web應用。

有哪些公司使用了Node.js?

有很多大公司使用了Node.js。 比如Netflix,PayPal,Linkedin等都又在用。

要說明的是,Node.js?並不適合所有應用場景的,node主要注重高並發和io密集型的應用。運算密集型,大量耗cpu的,大量數值計算的應用不適合Node.js。

入門書籍推薦

《了不起的Node.js》

作為Node.JS入門挺好的一本書,講得比較太淺,基本上就是介紹開發一個簡單的Node.JS應用所要用到的一些技術和工具。

《Node.js開發指南》

很有名的一本書,對NodeJS的一些原理做了深入介紹,挺不錯的。


web開發分為前端和後端,前端開發一般使用html+js+css實現,後端開發可以使用node.js,Java,c#,PHP等。

node.js相比於其他的後端語言,更適合io密集型場景


推薦閱讀:
相關文章