跨框架提昇開發高度 - 前端高級架構師應具備的思想及技能
侯策 著
買這商品的人也買了...
-
$560$437 -
$403雲計算原理與實踐
-
$580$458 -
$1,000$780 -
$880$695 -
$680$530 -
$600$468 -
$356漏洞管理實戰:網絡風險管理的策略方法
-
$560動手學深度學習(PyTorch版)
-
$1,368$1,300 -
$780$616 -
$490$417 -
$820$697 -
$760$593 -
$520$390 -
$790$616 -
$1,280$845 -
$580$458 -
$880$695 -
$580$458 -
$680$530 -
$1,280$1,011 -
$620$490 -
$850$663 -
$580$435
相關主題
商品描述
- 從「匠」到「師」的必經之路,前端產業技術快速昇華到架構師
- 前端專案化管理工具,Webpack、Vite、npm、yarn。
- 前端開發架構生態,AST、Babel生態
- 核心框架原理及設計模式、深入了解各種node.js圍繞的框架:Vue、React
- 實戰設計前端架構,如行動端離線套件、編譯和建構、部署和發佈
- 前端全鏈路,完整Node.js生態開發實戰
本書包括五個部分,涵蓋30個主題。
第一部分首先就是以npm和Yarn套件管理工具切入專案化主題,透過Webpack和Vite建構工具加深讀者對專案化的理解。深入介紹幾個極具代表性的工具的技術原理和演變過程。
第二部分為現代前端開發架構生態,幫助讀者培養前端專案化基礎建設思想,這也是設計一個公共函式庫、主導一項技術方案的基礎知識。
第三部分為核心框架原理及設計模式,探索經典程式的奧秘,體會設計模式和資料結構的藝術,帶領讀者結合業務實踐,思考優秀的設計思想如何在工作中實作。
第四部分是前端架構設計實戰在這一部分中,我會一步一步帶領大家從0到1實現一個完整的應用專案或公共函式庫。這些專案實踐並不是社區上氾濫的Todo MVC,而是代表先進設計理念的現代化專案架構專案(比如設計實現前端+行動端離線套件方案)。
第五部分前端全鏈路Node.js全端開發,帶大家設計並完成一個真正意義上的企業級閘道,其中涉及網路知識、Node.js 理論知識、許可權和代理知識等。帶大家研究並實現一個完善可靠的Node.js服務系統,涉及非同步訊息佇列、資料儲存,以及微服務等傳統後端知識。
作者簡介
侯策
就職於某內容社區類互聯網上市公司,具有多年海內外工作經驗,曾先後就職於法國ENGIE集團、Google、百度等知名企業。
擅長前端工程化體系搭建及基礎建設架構設計。深入了解前端各類技術框架和相關技術棧,具有豐富的高流量產品穩定性建設及性能和使用者體驗優化經驗,在業務提效和品質保障方面亦有深厚積累,在跨端開發(包括小程式矩陣開發)、富文本編輯器、Node.js、React等技術方向有較強的業內影響力。在技術氛圍打造、團隊成員培養、技術體系建設、新技術落地、難點攻堅、歷史包袱重構等方面均有豐富的實踐經歷。
可通過知乎社區聯繫作者:Lucas HC
目錄大綱
第一部分 前端專案化管理工具
第1 章 安裝機制及企業級部署私服原理
npm 內部機制與核心原理
npm 不完全指南
npm 多來源鏡像和企業級部署私服原理
總結
第2 章 Yarn 安裝理念及相依管理困境破解
Yarn 的安裝機制和背後思想
破解相依管理困境
總結
第3 章 CI 環境下的npm 最佳化及專案化問題解析
CI 環境下的npm 最佳化
更多專案化相關問題解析
最佳實作建議
總結
第4 章 主流建構工具的設計考量
從Tooling.Report 中,我們能學到什麼
總結
第5 章 Vite 實現:原始程式分析與專案建構
Vite 的「從天而降」
Vite 實現原理解讀
總結
第二部分 現代化前端開發和架構生態
第6 章 談談core-js 及polyfill 理念
core-js 專案一覽
如何重複使用一個polyfill
尋找最佳的polyfill 方案
總結
第7 章 整理混亂的Babel,拒絕編譯顯示出錯
Babel 是什麼
Babel Monorepo 架構套件解析
Babel 專案生態架構設計和分層理念
總結
第8 章 前端工具鏈:統一標準化的babel-preset
從公共函式庫處理的問題,談如何做好「掃雷人」
應用專案建構和公共函式庫建構的差異
一個企業級公共函式庫的設計原則
制定一個統一標準化的babel-preset
總結
第9 章 從0 到1 建構一個符合標準的公共函式庫
實戰打造一個公共函式庫
打造公共函式庫,支援script 標籤引入程式
打造公共函式庫,支援Node.js 環境
從開放原始碼函式庫總結生態設計
總結
第10 章 程式拆分與隨選載入
程式拆分與隨選載入的應用場景
程式拆分與隨選載入技術的實現
Webpack 賦能程式拆分和隨選載入
總結
第11 章 Tree Shaking:移除JavaScript 上下文中的未引用程式
Tree Shaking 必會理論
前端專案化生態和Tree Shaking 實踐
總結
第12 章 理解AST 實現和編譯原理
AST 基礎知識
AST 實戰:實現一個簡易Tree Shaking 指令稿
總結
第13 章 專案化思維:主題切換架構
設計一個主題切換專案架構
主題色切換架構實現
總結
第14 章 解析Webpack 原始程式,實現工具建構
Webpack 的初心和奧秘
手動實現打包器
總結
第15 章 跨端解析小程式多端方案
小程式多端方案概覽
小程式多端——編譯時方案
小程式多端——執行時期方案
小程式多端——類React 風格的編譯時和執行時期結合方案
小程式多端方案的最佳化
總結
第16 章 從行動端跨平臺到Flutter 的技術變革
行動端跨平臺技術原理和變遷
Flutter 新貴背後的技術變革
總結
第三部分 核心框架原理與程式設計模式
第17 章 axios:封裝一個結構清晰的Fetch 函式庫
設計請求函式庫需要考慮哪些問題
axios 設計之美
總結
第18 章 對比Koa 和Redux:解析前端中介軟體
以Koa 為代表的Node.js 中介軟體設計
對比Express,再談Koa 中介軟體
Redux 中介軟體設計和實現
利用中介軟體思想,實現一個中介軟體化的Fetch 函式庫
總結
第19 章 軟體開發的靈活性和訂製性
設計模式
函式思想
總結
第20 章 理解前端中的物件導向思想
實現new 沒有那麼容易
如何優雅地實現繼承
jQuery 中的物件導向思想
類別繼承和原型繼承的區別
總結
第21 章 利用JavaScript 實現經典資料結構
資料結構簡介
堆疊和佇列
鏈結串列(單向鏈結串列和雙向鏈結串列)
樹
圖
總結
第22 章 剖析前端資料結構的應用場景
堆疊和佇列的應用
鏈結串列的應用
樹的應用
總結
第四部分 前端架構設計實戰
第23 章 npm scripts:打造一體化建構和部署流程
npm scripts 是什麼
npm scripts 原理
npm scripts 使用技巧
打造一個lucas-scripts
總結
第24 章 自動化程式檢查:剖析Lint 工具
自動化Lint 工具
lucas-scripts 中的Lint 設定最佳實踐
工具背後的技術原理和設計
總結
第25 章 前端+ 行動端離線套件方案設計
從流程圖型分析Hybrid 性能痛點
相應最佳化策略
離線套件方案的設計流程
離線套件方案持續最佳化
總結
第26 章 設計一個「萬能」的專案鷹架
命令列工具的原理和實現
從命令列工具到萬能鷹架
總結
第五部分 前端全鏈路——Node.js 全端開發
第27 章 同構著色架構:實現SSR 應用
實現一個簡易的SSR 應用
SSR 應用中容易忽略的細節
總結
第28 章 性能守衛系統設計:完善CI/CD 流程
性能守衛理論基礎
Lighthouse 原理介紹
性能守衛系統Perf-patronus
總結
第29 章 打造閘道:改造企業級BFF 方案
BFF 閘道定義及優缺點整理
打造BFF 閘道需要考慮的問題
實現一個lucas-gateway
總結
第30 章 實現高可用:Puppeteer 實戰
Puppeteer 簡介和原理
Puppeteer 在SSR 中的應用
Puppeteer 在UI 測試中的應用
Puppeteer 結合Lighthouse 的應用場景
透過Puppeteer 實現海報Node.js 服務
總結