1. 程式人生 > >Node.js、npm和一些前端知識解惑

Node.js、npm和一些前端知識解惑

code ref HA 管理系 gulp model 記錄 管理工具 use

對以往經歷過原生App開發、當前主要做後端開發的我這樣一個童鞋來說,不僅覺得Web前端布局繁雜,並且對其技術體系了解不深,人說當今是大前端時代,微信推出小程序後我也開始接觸到相關的開發,現在很多開發框架也引入了數據綁定的概念,類似的如vue.js。一直以來對Node.js也有很多疑問,在此記錄個解惑筆記。

  • Node.js 和 npm
[官網關於Node.js的描述]
Node.js? is a JavaScript runtime built on Chrome‘s V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js‘ package ecosystem, npm, is the largest ecosystem of open source libraries in the world.

所以,Node.js是一個構建在谷歌V8引擎的js運行環境。Node.js的事件驅動、非阻塞IO模型使其輕量、高效。npm是Node.js的包管理系統,是全世界最大的開發庫生態系統。

下面引入一段RUNOOB網站上的解釋:

NPM是隨同NodeJS一起安裝的包管理工具,能解決NodeJS代碼部署上的很多問題,常見的使用場景有以下幾種:
1. 允許用戶從NPM服務器下載別人編寫的第三方包到本地使用。
2. 允許用戶從NPM服務器下載並安裝別人編寫的命令行程序到本地使用。
3. 允許用戶將自己編寫的包或命令行程序上傳到NPM服務器供別人使用。

從包管理的角度上來看,npm應該算是類似iOS中的CocoaPods,Java中的Maven。這樣看起來就好理解多了。詳細使用和原理還待深究。

隨著各種Web應用的發展,HTML5、小程序、React Native各種技術在多個領域的廣泛使用,逐漸引領了一股前端熱潮。手機端利用React開發跨平臺應用,Node.js可編寫提供後端服務等等。

從當前Web前端開發來看,主要的前端技術框架有React、Angular JS、Vue,也有使用dva的,dva這個框架也是最近了解到的,可在github上找到。dva on github

常用的前端構建工具有Webpack、Gulp、Grunt。

Node.js、npm和一些前端知識解惑