前端工程化(理解篇)

早日恢复功力發表於2024-03-25

工程化的背景
專案發展檔案越來越多,單純的html+js+css+資源的模式檔案模式不利於開發並且檔案依賴比較混亂,最原始的js,css(主要這2個)html不夠強大。

工程化的作用
1增強原始語法,補充語法缺陷提供更強的api與語法糖。(less,es6,xml...)
2有序管理依賴,不再單純透過index.html script引入,而是透過packj.son ESmoudel NPM一套環境與規範有序管理。(npm是社群資源環境,pack.json從環境下載到,ejs規範工程裡import,exp依賴關係使用)
3生成有利於開發的文字結構,這裡由webpack完成,webpacck打包後j將開發結構變為html+js+css+資源的模式檔案模式。記住webpack只做這一件事 (vue,react這些腳手架是webpack的二度封裝可以理解為webpack 加內建的一些依賴 並且隱藏了一些不可修改的檔案)

工程化依賴的分類
1 hcj 透過 pollyfill 增強api可以理解成一些封裝的方法。寫了一個新的語法瀏覽器/伺服器肯定是不識別的。這時候需要將這些新的語法轉翻譯原始的,就跟使用方法要有封裝檔案一樣。
就需要管理這些依賴包 專門負責轉譯的平臺。

1 html略 ,
2 js 平臺 bable(管理外掛/墊片的) 增強;
3 css 透過 postocss 增強;
bable 和 postocss 會預裝外掛與墊片 整合環境 。

引人依賴 -->bable / postocss(整合環境)-->用於打包的的語言
過程 將js/css 變成 ATS 樹結構(便於遍歷),再轉換為js/css 再轉化過程中新增 外掛處理。

環境問題 :node 環境(express ),瀏覽器環境 ,開發工具環境 (只認hjc 不認 增強語法 這就是構建工具的意義)

其他: cli 如 npm-cli vue-cli 是指令互動 有依賴要呼叫裡面的額api 需要這些指令用於使用者互動。
總結
hcj ->ejc依賴增強語言 - >bable/postcss (平臺其實也是依賴 管理依賴的依賴 ) -> 構建工具webpck 平臺 - >二次封裝 腳手架

--:關鍵詞 依賴 外掛 墊片 整合管理 構建工具 ( webpack ) cli ast npm ems模式 模組化import 預裝編譯器

相關文章