目前, 我的了解的前端比较流行的框架是三个: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是个不错的选择.