Node.js(JavaScript,everywhere)
1.Node.js 介紹
1.1. 為什麼要學習Node.js
-
企業需求
+ 具有服務端開發經驗更好
+ front-end
+ back-end
+ 全棧開發工程師(什麼都幹唄!!!)
+ 基本的網站開發能力
* 服務端
* 前端
* 運維部署
+ 案例(多人社群) -
學習node.js的目的
+ 幫助大家開啟服務端這個黑盒子
+ 只有瞭解服務端,才能更好的配合服務端開發人員進行協同開發
1.2. Node.js是什麼
-
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.
+ Node.js不是一門語言
+ Node.js不是庫/框架
+ Node.js是一個JavaScript執行時環境
+ 簡單點來講Node.js可以解析和執行JavaScript程式碼
+ 以前只有瀏覽器可以解析執行JavaScript程式碼
+ 也就是說現在的JavaScript可以完全脫離瀏覽器來執行,一切都歸於:Node.js -
瀏覽器中的JavaScript
-
Node.js中的JavaScript
+ 沒有BOM/DOM
+ 服務端不處理頁面
+ 在Node這個JavaScript執行環境中為JavaScript提供了一些伺服器級別的操作API
1.3. Node.js能做什麼
-
Web 伺服器後臺
-
命令列工具
+ npm(node)
+ 命令列工具
+ git(c語言)
+ hexo(node)
+ ... -
對於前端工程師來說,接觸node最多的是它的命令列工具
+ 自己寫的很少,主要是使用別人第三方的
+ webpack
+ gulp
+ npm
1.4. 預備知識
-
HTML
-
CSS
-
JavaScript
-
簡單的命令列操作
+ cd
+ dir
+ ls
+ mkdir
+ rm -
具有服務端開發經驗更佳
1.5. 一些資源
-
《深入淺出Node.js》
+ 偏理論,幾乎沒有什麼實戰性內容
+ 理解原理底層
+ 結合課程的學習來看 -
《Node.js權威指南》
+ API講解
+ 沒有實戰
1.6. 這個階段課程能學到啥?
-
B/S 程式設計模型
+ Browser - Server
+ back-end
+ 任何服務端技術這種BS程式設計模型都是一樣,和語言無關
+ Node只是作為我們學習BS百年城模型的一個工具而已 -
模組化程式設計
+ RequireJS
+ SeaJS
+ @import('檔案路徑')
+ 以前認知的JavaScript只能通過script標籤來載入
+ 在Node中可以像@import()一樣來引用載入JavaScript指令碼檔案 -
Node常用API
-
非同步程式設計
+ 回撥函式
+ Promise
+ async
+ generator -
Express Web開發框架
-
Ecmascript6
-
... ...
-
學習Node不僅會幫助大家開啟服務端黑盒子,同時會幫助你學習以後的前端高階內容
+ Vue.js
+ React
+ Angular