2020新展望之VUE与REACT的比较

1,071 阅读3分钟

根据2020新发展,研发项目组需要探讨技术栈的选用。个人项目是以VUE展开的,更偏向VUE一些。

vue与react的对比

框架的相同点

  • 采用的虚拟DOM
  • 提供了组件化的视图方案
  • 都有扩展的全家桶,相关的库

区别

  • vue注重模板编写,react注重jsx编写

vue更加贴近HTML进行模板编写,react更加贴近js注重编程

  • vue采取对象属性的方式改变状态,react采取专用的api进行状态管理

选择

  • 创建大型应用程序时,可以选择React

js模板可以组织成具有很好的分解性,具有的可重用性和可测试性更好;React的immutable应用状态在大型应用程序中,透明度和可测试性的意义非凡;

  • 生态圈的考虑,可以选择React

react出现早,拥有更大的生态圈

  • 非特殊考虑,可以优先选择Vue

vue在实际程序设计时体现的更完善更简洁,react注重依赖JSX以及ES6特性而且状态改变较为固定;

  • 想快速开发且体积小运行快,可以选择Vue

vue的渲染系统比react更快,且vue框架的压缩包比react更小;

vue会追踪每一个组件的依赖关系,渲染时不会重新渲染整个组件树;

总结

  1. 本身技术栈与团队的融合,用更有把握的框架;
  2. 针对UI库,Element-UI在国内的使用情况是大于Antd的;
  3. 针对代码风格,vue的组件化类似HTML,相对于react的jsx编程化组件更加简洁、直观;
  4. 针对灵活性,vue与react都有组件化编程方案,相差不大;
  5. 针对性能,vue采用双向绑定与组件节点追踪,使得比react渲染的更快;vue优化了重新渲染的机制,渲染功能更强;
  6. 针对生态,都有丰富的生态圈;
  7. 针对当前项目的场景,因为当前的项目基本上都是业务系统与分析系统,通过github上进行对比,vue全家桶对其有更加贴合的适用性;
  8. 针对团队对技术栈熟悉程度,仅对开发者而言,对自我技术栈的认知;
  9. 针对项目设计与架构风格,vue采用贴近HTML的方式进行模板编写,清晰的组件化结构,更易操作与实施;

附:虽然react框架出现早,生态完善,在web及移动平台提供了较为完善的解决方案,但是vue这几年的迅速发展,尤其在国内大为支持,生态愈发完善,也提供了web及移动平台的解决方案。随着vue与react的不断更新与强大,其实框架间的差异是愈发小的,现在两者都可以写出比对方更加优雅性能更好的项目代码。