前端工程化的個人思考

前端工程化的個人思考

在我的印象中,一提到軟件工程,首先不會想到的是前端這一塊,大概是因爲以往工作偏向的緣故。這兩年最大的感觸就是前端發展的很快,時下的前端開發也遠非從網絡中摳一段jQuery代碼就能搞定功能這麼簡單。

AJAX的出現第一次將前端的請求異步化,局部刷新使用戶體驗提升了一大截。NodeJS的出現則將前端的發展推向了高潮,一大批基於V8引擎、基於NodeJS之上的開發工具脫穎而出,極速的提升前端開發的效率、效果。

下面從幾個方面,來梳理下近階段關於前端的一些思考,僅供參考,歡迎在留言區討論。

前端工程師崗位

但凡有點規模的團隊,前後端分離開發是必然的。前端開發崗們之前多是由後端開發人兼職,由網頁製作人員將靜態效果製作完後,交由後端開發人員將動態功嵌入進去。現在這麼做的團隊也有,當然這樣效率不是最高的。前端工程師獨立崗位的出現,將前端工程化帶近了一步。這一部分專職從事前端開發,而無須再關心後端數據如何組裝、如何處理、如何存儲,將更大的精力投入到終端展現上面。

面向瀏覽器編程

(之前一直準備寫篇文章叫“面向工資編程”)這個詞確實是最近一個月才接觸到新名詞,被ie6折磨過的朋友相信很能體會背後的意味。各種瀏覽器終端的出現,且不少以未遵守JS/CSS規範的形式出現,導致開發終端展現時不得不考慮各種瀏覽器、瀏覽器的不同版本的兼容性。時至今日,前端技術的發展亦足以解決這個問題。Babel的產生,編程時只關注語言即可,在構建時,由其產生低版本JS以滿足低版本的兼容性。PostCSS的面世,也使CSS開發時無須擔心多版本、多種類瀏覽器的兼容性,好消息時,各家瀏覽器也在積極的向規範、向標準靠攏,以使終端展現能夠更加一致。

開發效率

一大批時下優秀的JS開發框架、腳手架,將JS開發提高到了前所未有的高度,用純jQuery的朋友都少了吧,開始轉向Vue、React、ng2的懷抱了吧。Yoeman、Vue-cli等腳手架工具,可以讓你輕鬆搭建一個前端項目。CSS預處理、預編譯框架更是將這個弱編程的語言中加入了編程能力,less、sass已經在很多項目中採用。任務處理器更是極大的解放了人力,gulp、webpack幾乎成了現代化前端開發的必備。本地化開發時,通過事件監聽,直接熱部署將結果呈現到終端,而無須在反覆刷新頁面、清緩存刷新頁面。Mock的出現更是將前端開發與後端開發隔離,不再相互掣肘。

模塊化組件化

提到工程化總離不開模塊化,提到了模塊化,似乎組件化也很有必要,這是個一環套一環的依賴。但實施起來亦是相當不易,特別是有期限項目性工程,交付第一,交付結束如無後續升級,基本不會進行模塊化組件化優化。產品化項目比較適用,隨着功能迭代推進,模塊化更有利於開發解耦,提高複用性,對後期維護也很友好。

Node的出現,使模塊化更加簡便,你會發現模塊化項目中,require、import、export應用的如此頻繁,CommonJS,AMD/CMD在ES6之前在模塊化研發起着比較重要的作用。ES6中更是原生就支持模塊化,(ECMAScript簡稱ES,JavaScript只是ES的一種實現方式)。

爲了幫助大家讓學習變得輕鬆、高效,給大家免費分享一大批資料,幫助大家在成爲前端工程師,乃至全棧工程師的路上披荊斬棘。在這裏給大家推薦一個前端全棧學習交流圈:784783012 歡迎大家進×××流討論,學習交流,共同進步。
當真正開始學習的時候難免不知道從哪入手,導致效率低下影響繼續學習的信心。
但最重要的是不知道哪些技術需要重點掌握,學習時頻繁踩坑,最終浪費大量時間,所以有效資源還是很有必要的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章