react和vue框架應該如何選擇?
在選擇框架之前先了解為什麼要使用框架?最終目的是提高開發效率和開發體驗
前端發展階段大體分為三個大階段:
第一階段:不分前後端,前端代碼是後端的一部分,隨著業務的複雜,代碼維護性很差
第二階段:後端為主的MVC時代,前端負責v,主要提供模板,及部分非同步ajax請求,該階段代碼與業務強耦合,代碼復用性不強
第三個階段:前端工程化時代,出現了grunt、glup、webpack等工具,前端可以單獨進行項目構建、開發、打包、部署等流程,實現前後端開發部署的分離。react和vue框架提供了組件化的開發方式,代碼復用性較強,可維護性更好。同時支持自動更新dom,開發者只關注業務的開發,提高開發效率。
因此為了提高開發效率和開發體驗,應該使用react或者vue框架進行開發。
重頭戲來了,那麼這麼多的框架到底選哪個好呢?一句話適合自己的
下面從出身背景、優勢、缺點、適合場景、開發模式、實踐情況進行對比
1、出身背景:
react是facebook團隊開發,2013.3月發布。目前版本15.5.4(初始版本是13開頭),社區較成熟,擁有更大的生態圈
vue是Evan You個人開發,2014年2月發布 vue2.0版本,生態圈較小
2、優勢:
react官網推薦的三個特點如下:
1)狀態機 —輕鬆創建交互界面
2)基於組件 —封裝組件,管理狀態
3)學習一次,到處使用 —跨平台
vue 官網推薦的三個特點
1)易用 —會html、css、js即刻開始使用
2)靈活 —漸進式技術棧
3)性能 —17kb (min+gzip)
3、缺點:
react:
需要轉換開發模式(函數式編程)
學習新的概念和語法(jsx、es5/6等)
需要其他類庫支持 (redux)
vue:
個人維護框架,風險可能會更大
社區不成熟,部分依賴開發人員更新
資源較少
4、適合場景
react:
大型複雜應用程序
同時適用於web端和原生APP
周期長,不斷迭代的需求
vue:
模板搭建開發模式
周期短、小型應用程序
5、開發模式
react:
函數式編程(JSX)
setState狀態管理
vue:
模板式開發
屬性對象
6、實踐情況
react:
國外公司:Facebook、Netflix、Airbnb
國內公司:螞蟻金服、阿里、口碑、美團、滴滴
vue:
主要是餓了么
最後總結:兩個都是不錯的框架,具體怎麼選參考如下:
如果是以下需求選react
1、如果想組件式開發
2、如果想web和wap統一技術棧
3、如果想要代碼更可維護和可測試性
4、如果想利用豐富的組件庫及第三方包
如果是以下需求選vue
1、如果想模板式開發
2、如果是在現有代碼基礎上快速升級
3、如果想更加靈活性
4、如果想要更快的渲染速度和體積
都是不錯的
推薦閱讀:
※artTemplate基本使用方法詳細
※web前端:如何(安全地)使用Vue.js的jQuery插件
※zzz 周刊 - 1039 期 - 公孫離幻舞玲
※前端日刊-2017.12.27