web前端架構是一系列工具和流程的集合,旨在提升前端程式碼的質量,並實現高效可持續的工作流程。 web前端架構的核心有4個:1、程式碼(HTML、CSS、JavaScript);2、流程,怎麼用工具和流程建立一個高效且避免出錯的工作流程是一個重要的思考;3、測試,創建覆蓋面廣泛的測試方案,能確保老程式碼還能正常運作;4、文檔,設計文檔是你與他人交流的工具。
本教學操作環境:windows7系統、Dell G3電腦。
在Web前端技術變化日新月異的今天,Web前端專案變的越來越複雜。前端架構也會隨著我們現在千變萬化的迭代需求,架構技術的演化,不僅是架構師也是我們每個開發人員都必須關注的問題。
一、web前端架構的由來
2014年10月13日CSS開發者大會上,在新奧爾良會議中心一個擁擠的房間裡「舉起前端架構的旗幟」成了在一線奮鬥的開發者們共同的呼籲。在那之後,那些想要弄清楚自身定位以及在公司中所扮演的角色的開發者們發現,其實他們一直扮演著前端架構師的角色, 卻從來沒有擁有過這個頭銜,或者沒有足夠的信心去爭取這個職位所應有的權力。
在大會召喚幾週之後,許多人把他們在Twitter上的個人簡介改成了「前端架構師」。
二、你理解的web前端架構是怎麼樣的?
前端架構如建築設計,在建造過程中,建築設計師需要設計與規劃方案,並且跟進施工過程。這與前端架構師的工作有著異曲同工之妙,不同的是後者建造的是網站,而不是建築物。比起澆築混凝土,建築設計師會在設計工程構圖的工作上投入更多的精力。同理,相較於編寫具體的程式碼,前端架構師更專注於開發工具和最佳化流程。
前端架構是一系列工具和流程的集合,旨在提升前端程式碼的質量,並實現高效可持續的工作流程。
前端設計架構不是一勞永逸的工作,沒有任何設計在一開始就是完美的,也沒有任何計畫可以一步到位。
前端架構的特殊性
前端不是一個獨立的子系統,又橫跨整個系統
分散性:前端工程化
頁面的抽象、解耦、組合
可控:腳手架、開發規格等
有效率:框架、元件庫、Mock平台,建置部署工具等
抽象
頁面UI抽象:元件
通用邏輯抽象:領域實體、網路要求、例外處理等
#三、web前端架構的原則
1. 系統設計
試想一下,如果一棟建築物沒有明確的建造設計,所有的重要事項都由建築工人直接決定,那麼就可能會出現這樣的情景:一面牆用石頭壘,第二面牆用磚頭砌,第三面牆用木頭搭,第四面牆因為追求時髦而留空。
雖然網站的整體外觀和風格基調完全由經驗豐富的視覺設計師決定,但前端架構師掌控 著背後的前端開發方法和系統設計哲學。透過設計所有前端開發人員都要遵循的系統規範,前端架構師清楚地描繪了產品和程式碼的最終形態。
一旦前端架構師建立起了系統設計的規範,專案就擁有了可以衡量程式碼品質的標準,否 則我們如何判斷程式碼是否達標呢?一個精心設計的系統,應具備完善的檢驗機制,並做出適當的取捨,以確保系統中的程式碼有實質的價值,而不是簡單的堆砌。
2. 工作規劃
有了明確的結構設計之後,就需要發展開發工作流程了。開發人員寫一行程式碼並且提交到線上需要經過什麼步驟?舉一個最簡單的例子,這個過程包括使用 FTP 登入伺服器,修改一個檔案並儲存。然而,對於大多數專案而言,完整的工作流程可能會使用多種工具,例如版本控制器、任務調度器、CSS 處理器、文件工具、測試元件和伺服器自動化工具等。
前端架構師的目標是設計出能流暢運作的系統。這個系統不僅能有效率且快速地啟動,還可以透過語言分析、測試案例、文件記錄等方法持續提供有效的回饋,並且大幅減少因重複操作而產生的人為錯誤。
3. 監督跟進
前端架構設計絕不是一勞永逸的工作。沒有任何設計在一開始就是完美的,也沒有任何計畫可以一步到位。客戶和開發人員的需求會隨著時間改變。在某個階段運作良好的開發流程,隨後也可能需要重新調整,以便提高效率、減少錯誤。
前端架構師的一個非常重要的能力,就是能夠持續地優化工作流程。如今各種各樣的構 建工具可以讓我們很方便地改變工作方式,並通知到每位開發人員。
有些人問前端架構師是否等同於管理角色,不再需要寫商業程式碼。前端架構師不僅要寫更多程式碼,還要會用多種程式語言,還要使用大量的工具。程式碼量並未減少,只是程式碼的讀者改變了。前端開發人員是針對終端使用者寫程式碼,而前端架構師面向的則是團隊裡的開發人員。
四、web前端架構的核心
1. 程式碼
## 歸根結底,所有的網站都是由一堆文字檔案和資源檔案組成HTML、CSS、JavaScript的。當我們面對製作網站所產生的大量程式碼時,就會發現為程式碼和資源設定一個期望是多麼重要。2. 流程
怎麼用工具和流程建立一個有效率且避免出錯的工作流程是重要的思考。工作流程變得越來越複雜,那些用於建構它們的工具也是如此。這些工具在提高生產力、加快效率和保持程式碼一致性上帶來了驚人的效果,但也伴隨著過度工程和抽象的風險。3. 測試
要建立一個可擴展且可持續最佳化的系統,必須確保新程式碼與舊程式碼能夠很好地相容,我們的程式碼不會孤立存在,它們都是大型系統的一部分,創造覆蓋廣泛的測試方案,確保舊程式碼還能正常運作。4. 文件
設計文件是你與他人溝通的工具,來闡述你的設計決策是什麼,來闡明你的設計決策是什麼以及為什麼你的決策是好的。如果不是團隊中的重要成員要離開,幾乎都不會意識到文件的重要性。 這四個核心是建立可擴展且可持續最佳化的系統的基礎。 (學習影片分享:web前端入門)
以上是web前端架構是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!