Angular 技术选型

1. 技术选型考量

技术选型一般考虑:

  • 项目的规模和复杂度
  • 项目的性能要求
  • 团队的开发经验
  • 社区的活跃程度

2.Angular、React、Vue 技术比较

特性 Angular React Vue
类型 完整框架 UI 库 渐进式框架
体积 较大 (~500KB) 较小 (~100KB) 较小 (~20KB)
学习曲线 较陡 较低 较低
性能 较好 较好 较好
功能 强大 较弱 较弱
可扩展性
社区活跃度
适合项目类型 大型、复杂 小型、性能要求高 中小型

Angular

  • 优点:
    • 功能强大,提供开箱即用的解决方案,可快速构建复杂的应用程序。
    • 代码结构清晰,易于维护和扩展。
    • 社区活跃,资源丰富。
  • 缺点:
    • 体积较大,学习曲线较陡。
    • 不适用于小型项目。

React

  • 优点:
    • 性能优异,使用虚拟 DOM 进行渲染。
    • 学习曲线较低,易于上手。
    • 社区活跃,生态丰富。
  • 缺点:
    • 功能相对较弱,需要搭配其他库使用。
    • 不适合大型项目。

Vue

  • 优点:
    • 轻量级,易于学习和使用。
    • 灵活可扩展,可满足不同项目的需要。
    • 社区活跃,发展迅速。
  • 缺点:
    • 功能相对较弱,需要搭配其他库使用。
    • 不适合大型项目。

总结

  • Angular 适合大型、复杂项目,需要强大的功能和完善的解决方案。
  • React 适合小型、性能要求高的项目。
  • Vue 适合中小型项目,需要灵活性和易用性。

3. 为什么国内Angular不是很流行

  1. Angular有些资源访问受限或者较慢。
  2. 上手难度稍大,或者说需要更多的时间培训才能开发。
  3. Angular对anuglarJS(1.0版本)不支持(虽然后期推出了兼容方案), 伤了很多人的心。不过这个难免,一个组件、框架的升级,如果一直背负的早期债务,很难有更好的提升。
  4. TypeScript。Angular是第一个吃螃蟹的,完全抛弃了js,转入Typscript,得罪的很多js的铁杆粉丝,以及惧怕ts的人。不过现在看来,typescript才是前端的趋势。vue3也声称用typescript重写了,并打算更完美的支持typescript。
  5. 大而全的框架。选择Angular的话,它自带了很多东西,路由、表单、动画、http请求等等,需要更多的时间去学习和理解。而其他框架,很多组件都是有备选方案,或者第三方提供的(如vue使用axios处理http请求),让人觉得了解框架更简单。
  6. 版本升级较快。每半年一个主版本,优缺点共存吧。
  7. 恶性循环:用的人少 》 聊的人少 》 资源少 》 用的人更少。
  8. vue更符合国人的习惯,考虑了一些小的常用细节。比如自带支持避免一个按钮点击多次(修饰符once,@click.prevent.once)。