大前端工程師為何還如此吃香?
從 web1.0 到 web 2.0,我們其實沒太多感知,除了出現(xiàn)了很多 Prototype、jQuery 等框架,幫我們抹平了瀏覽器兼容性外,真的沒有太多驚喜。至于 ria,估計早已經(jīng)沒多少人知道。至于 gwt 這個 Google 驚艷的嘗試,也慢慢地淹沒在記憶里。可能在企業(yè)開發(fā)領域,對 Ext.js 還有些許記憶,它自己實現(xiàn)了面向?qū)ο髾C制,它豐富的組件系統(tǒng),快速開發(fā)經(jīng)歷和較好的用戶體驗,還是非常不錯的,但對于組件化,這種探索是遠遠不夠的。它只是面向?qū)ο髮用鎸Υa的復用。
2014 年,前端開始出現(xiàn) Backbone,它是第一個知名的前端 mvc 框架,從此開始前端開啟了劃時代的篇章。隨后 Angular 橫空出世,從 mvvm、ioc,到指令等各種概念,點燃了很多后端開發(fā)對前端的幻想。誠然,前端集成了更多的后端思想,這是好事,但從另一個角度考慮,這也是今天大前端發(fā)展過快的導火索。
隨后 React 的誕生,借助于 Virtual DOM 的抽象,真正地實現(xiàn)了組件化,再次將組件化這個概念推向高潮。再說 Vue.js,在 Angular 火的時候,它借鑒了一部分,在 React 火的時候,它又借鑒了一些,在大家都抱怨前端越來越復雜的時候,它站出來,你想要的特性我都有,而且更簡單,它的流行也是可以理解的。
移動端也面臨同樣的難題,既想要 h5 的靈活性,又想要有原生 app 的良好體驗。這是魚和熊掌的博弈,從 native 到 hybrid(還是不能滿足復雜交互),到基于組件的各種方案 react-native/weex(組件層面跨平臺,寫法統(tǒng)一,執(zhí)行最終是原生代碼,是折衷方案),它們豐富了端上的開發(fā),也從另一個角度,是前端開發(fā)同學讓這些創(chuàng)新方案落地。
今天,泛義的前端是涵蓋那些熟悉 React 在做 React Native 的前端開發(fā)的。在很多大公司也都已經(jīng)使用這種模式很久了,除了降低開發(fā)成本外,也拓寬了前端的更多涵蓋領域。在未來,應該有更多領域被納入到大前端概念里。
Alan
2019-07-25