目前, 我的瞭解的前端比較流行的框架是三個:css
BootStrap, React, Vuehtml
想要爲公司選一個做爲接下來的前端技術研發方向, 所以做了一番調查, 有點淺見.前端
BootStrap:
node
特色是柵格系統, 使用簡單, 上手容易. 專爲響應式頁面而生. 一套代碼就能夠自適應平板電腦和PC.webpack
缺點在於, 缺乏一套有力的成體系的組件(當時調查的時候尚未, 如今聽說有了), 我在實際使用時, 發生了做用域衝突的問題, 若是沒有整理好一整套組件, 開發很累.
web
React:app
特色主要有2個:
框架
1. 數據的單向響應.當數據發生變化的時候, React將會自動的管理UI界面更新ide
2. VisualDom(虛擬Dom). 由React來管理Dom樹的變化, 開發者只需使用React的虛擬Dom進行開發, 頁面的呈現會更快. 組件化
這個引伸出了一個更大的優勢: 虛擬Dom到真實Dom的映射, 是由React來控制的. 那麼若是虛擬Dom映射爲IOS或者Android呢? 因而React Native誕生了, 約80%的Reactive Native代碼是能夠同時支持IOS和Android的.
缺點在於, 最近React的GPL協議有變更, 容易引發商業問題...
Vue:
特色在於, 站在了React的肩膀上, 許多方面更出色了:
1. 數據的雙向綁定. 數據改, 頁面改. 頁面改, 數據也改.
2. 頁面的呈現聽說比React還快.
3. 組件化(實際上React也有組件化). 這和BootStrap這種組件化的概念還有點不一樣, Vue的組件化, 已經把做用域衝突的問題給搞定了.另外, js測試也變得更專業化了(有點相似junit).
4. 單html開發. 它的開發模式, 是一個html, 而後不停替換組件對應的js來切換顯示效果. html中的共通js和css只須要download一次, 理論上比Iframe頁面的呈現更快.
5. 結合node.js提供的webpack等, 能夠進行成體系的打包發佈.
缺點在於, 上手難度比較高, 而且大規模開發的化, 須要有體系化開發的積累. Vue的組件化開發推薦使用Element: http://element.eleme.io/#/zh-CN/component/popover
結論:
長遠考慮的話, 建議使用Vue+node.js. 短時間內使用的話, BootStrap是個不錯的選擇.