2019年web前端開發發展方向預測
千鋒小編認為過去的5年是前端工程化快速發展的過程,前端生產力得到了極大的發展,框架和工程化工具層出不窮。而近兩年前端的發展日益減緩,甚至在大家看來,現階段前端的發展只是在原有格局的基礎上小範圍進行升級。前端未來的發展方向究竟是怎樣的?
前端將逐漸侵佔client端的市場,web或許會藉助於sw演變成c/s架構:
這裡不是指weex、rn之類,而是藉由serviceworker、小程式等帶來的client應用新的形態,win10已經開始擁抱PWA,瀏覽器正在逐漸把client端的功能移入瀏覽器(3D、感測器等)。未來前端就是UI介面,無論客戶端還是瀏覽器端,有很大想象空間,隨著client應用複雜度的提升,可能會帶來新的前端框架。
框架格局應該不會有大的改變,入行門檻正在提升:
當前前端框架和工程化已經可以cover住大部分業務場景的複雜度。除非未來前端應用更加複雜,從而帶來新的框架之前,框架格局應該不會有太大變化。對從業者的影響:以前會個react、vue、webpack還值得拿出來說說,現在已經算是普通能力,想脫穎而出就要了解原始碼。再往後幾年,更是普通能力,企業更多的會看中職業背景、學校背景、專案能力、管理能力。靠著學框架轉行、跳槽的同學是2014-2018年的幸運兒,這個大門正在逐漸關閉,渴求發展的同學需要重新尋找新的藍海。
適配端、滿足相關業務需求
有螢幕顯示網際網路的頁面的時候,就有了PC前端的需求,隨著發展就逐步出現了HTML、CSS、JavaScript 等。出來了移動端的時候,就有了iOS應用開發、Android應用開發、網頁響應式適配等等需求。也可以通過設計一套通用的DSL來磨平端的差異,減少跨端研發的成本。比如React其實就有React(適用於 Web 環境)、React Native(適用於移動端)、React 360(前 React VR,用於 VR 領域)、React Canvas(生成圖片)。這種完全脫離端特定規範的DSL設計非常靈活和通用,只要元件化機制設計的好,再提供一套底層的元件和API,同時端上實現樣式、事件、功能等解析器就可以實現learn once write anywhere。
編碼效率需要提升
編碼效率提升有很多途徑。工具層面一般有程式碼規範和校驗工具、Yeoman 類腳手架工具、各種cli 開發工具、VSCode IDE 等。也有海量的庫,jQuery、React、Vue、Angular等。規範層面也在推進,從回撥函式到Promise到 Async/Await,然後配合Babel搶先用在專案裡。也有直接發明新語言語法的,比如TypeScript、Dart等。
釋出效率和穩定性需要提升
釋出出問題、線上執行老出錯也是很頭疼的。前端工程化雖然從2014年開始就很火,但感覺也還是比較原始。比如一些自動構建、測試、釋出到CDN等,基本還是要自己去研發或者利用開源社群組裝。不同於強業務邏輯的後端,前端面向業務領域的單元測試看起來永遠搞不起來。線上監控也好像沒有變成基建,基本只有大廠的核心業務才會去關注、研發、埋點。