序言
企業級Web 專案開發通常採用前後端分離的模式,前端工程師負責介面開發、資料著色,後端工程師負責業務邏輯處理和資料互動。相比以前不分離的開發模式,前後端分離的模式表現了分工的精細化,能在一定程度上提高團隊的開發效率,也能降低企業應徵難度。但在有些場景下,這種分工也帶來了問題。舉例來說,一位前端開發人員要完成一個完整的畢業設計專案或小型專案,他需要後端開發人員配合或自己學習後端開發技術來解決。有了Node.js,前端工程師幾乎不需要花費額外的學習成本就可以完成後端開發。在企業級開發領域,主流企業引入了Node.js 技術,其它大型企業也在其產品中驗證了Node.js 的高併發特性。
Node.js 使用JavaScript 作為開發語言,與傳統的Web 開發模式相比,由於它的執行環境脫離了瀏覽器,因此只需要掌握JavaScript 的ECMA 語法即可,而不需要關心DOM 和BOM。無論前端工程師,還是後端Java 工程師,上手使用Node.js都非常簡單。
Node.js 擁有完整的生態系統,在它的官方外掛程式中有很多成熟的中介軟體,幾乎涵蓋一般中小型專案開發所需的大部分功能。基於Node.js 的老牌開發框架Express 依然活躍,目前,其周下載量保持在千萬等級;阿里巴巴也推出了基於Node.js 的開放原始碼Web 框架Egg,還推出了基於Node.js 的alinode 性能平臺,可以覆蓋企業級專案的完整生命週期。筆者開發的多個Node.js 專案充分驗證了這些框架的高效和高併發特性。
總而言之,Node.js 的誕生使得JavaScript 語言像Java 等其他後端開發語言一樣,可以完成資料庫操作和服務端邏輯處理等任務。Node.js 支援前後端開發的特性吸引了大量的開發人員將其作為開發工具,尤其是很多前端開發工程師轉向了全端開發。可以說,能熟練使用Node.js 是前端工程師應聘時的加分項。
本書結合完整的專案實戰案例,全面介紹基於Node.js 的主流開發框架,帶領讀者系統地掌握Node.js 全端開發技術,從而具備開發企業級應用的能力。
本書特色
• 由淺入深:從Node.js 的基本概念講起,逐步深入介紹Node.js 的主流框架並進行專案實戰演練,學習門檻很低,容易上手。
• 實例豐富:結合大量實例講解基礎知識,並詳細介紹3個基於Node.js 的開發框架的用法。
• 專案實戰:詳解基於Node.js+MySQL+Vue 的微信商場專案開發的全過程,幫助讀者系統地掌握Node.js 全端開發技術,從而具備開發商業專案的能力。
• 經驗總結:全面歸納和總結筆者多年累積的專案開發經驗,讓讀者少走彎路。
本書內容
第1篇 Node.js 開發基礎知識
本篇涵蓋第1 ∼ 5章,從Node.js 的基本概念和安裝配置講起,然後詳細介紹Node.js 模組化管理、JavaScript 基礎知識、Node.js 常見的內建模組、Node.js 對資料庫的操作等相關內容。透過學習本篇內容,讀者可以快速了解Node.js 開發的基礎知識。有一定Node.js 開發基礎的讀者可以略過本篇而直接進入後續篇章的學習。
第2篇 Node.js 開發主流框架
本篇涵蓋第6 ∼ 8章, 詳細介紹3個基於Node.js 的框架的用法, 包括Express、Koa 和Egg,重點演示其語法知識和操作細節,如路由的使用、中介軟體的撰寫和RESTfull 介面撰寫等。透過學習本篇內容,讀者可以系統掌握基於Node.js 的主流框架的相關知識。
第3篇 專案實戰
本篇涵蓋第9 ∼ 15章,基於Node.js+MySQL+Vue,開發一個完整的百果園微信商場專案,演示完整的商業級全端專案開發的全過程,並簡單介紹Node.js 程式、小程式和Vue 程式性能最佳化涉及的相關知識。透過學習本篇內容,讀者可以掌握前面篇章介紹的相關技術,並系統了解一個真實專案開發的全過程,從而提升商業專案的開發能力。
目標讀者
• Node.js 零基礎入門人員;
• 前端開發工程師;
• 後端開發工程師;
• 軟體開發與測試人員;
• 對Node.js 感興趣的人員;
• 大專院校的學生;
• 相關教育機構的學員。
致謝
本書的誕生離不開很多人的幫助和鼓勵。首先,非常感謝家人的支援,本書的撰寫和案例偵錯佔用了筆者大量的業餘時間,是家人的默默支援才使得筆者順利完成撰寫任務;其次,感謝羅雨露老師,她在本書的出版過程中提供了很多幫助;最後,感謝自己的努力付出,希望本書能夠幫助更多的人。
技術支援
雖然筆者對本書所述內容都儘量核對,並多次進行文字校對,但因時間所限,可能還會有疏漏和不足之處,懇請讀者們批評與指正。讀者在閱讀本書時若有疑問,可以發送電子郵件回饋,電子郵件位址為bookservice2008@163.com。
潘成均