文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Angular vs React vs Vue:2021 年,应该选择哪个框架

2024-12-03 00:00

关注

就在几年前,开发人员还在争论他们是否应该在他们的项目中使用 Angular 和 React。但是在过去的几年中,我们看到了对 Vue.js 的第三个玩家的兴趣增长。

如果您是一名刚开始从事某个项目的开发人员并且无法决定使用哪个 JavaScript 框架,那么本指南应该可以帮助您做出决定。

[[417628]]

在这里,我们将涵盖 Angular、Vue 和 React 的各个方面,以了解它们如何满足您的需求。这篇文章不仅仅是 Angular vs React vs Vue 的指南,而是旨在提供一个结构来帮助判断前端 JavaScript 框架的总体情况。如果明年有新框架问世,您将确切知道要查看哪些参数!

让我们开始吧:

第 1 部分:Vue 与 React 与 Angular 的简史

在我们进入技术细节之前,让我们先谈谈这些框架背后的历史——只是为了更好地理解它们的哲学和它们随着时间的推移而演变。

(1) 一切是如何开始的

由谷歌开发的Angular于 2010 年首次发布,使其成为最古老的。它是一个基于 TypeScript 的 JavaScript 框架。 2016 年 Angular 2 的发布发生了重大转变(并且从原来的名称 AngularJS 中删除了“JS”)。 Angular 2+ 被称为Angular。尽管 AngularJS(版本 1)仍在更新,但我们将重点讨论 Angular。最新的稳定版本是 Angular 11,它于 2020 年 11 月发布。

Vue也称为 Vue.js,是该组中最年轻的成员。它由前 Google 员工 Evan You 在 2014 年开发。在过去三年中,Vue 的受欢迎程度发生了重大变化,尽管它没有得到大公司的支持。当前的稳定版本是 3.0,于 2020 年 9 月发布(此后有一些小的增量版本)。Vue 的贡献者由 Patreon 支持。应该注意的是,Vue 3 目前在它自己的 GitHub 存储库中,并且已经转移到 TypeScript。

React由 Facebook 开发,最初于 2013 年发布。Facebook 在其产品(Facebook、Instagram 和 WhatsApp)中广泛使用 React。当前的稳定版本是 17.X,于 2020 年 10 月发布(此后有较小的增量更新)

以下是 Angular、React 和 Vue 的简短总结,包括它们的状态和历史:

(2) 许可证

在使用开源框架之前,请确保通过其许可。有趣的是,所有三个框架都使用MIT 许可证,它对重用提供了有限的限制,即使在专有软件中也是如此。在使用任何框架或软件之前,请确保您了解许可证的含义。

(3) 人气

由于“angular”和“react”是常用词,因此很难从谷歌趋势中掌握它们的流行程度。尽管如此,他们受欢迎程度的一个很好的指标是他们的 GitHub 代码库获得的星数。2016 年年中,Vue 的星数突然发生了变化,最近,Vue 与 React 一起成为最受欢迎的框架之一。

Angular、React 和 Vue 的 GitHub 项目上的星数

让我们检查一下 Angular、React 和 Vue 的就业市场情况,这也是衡量受欢迎程度的一个很好的衡量标准:

(4) Angular vs React vs Vue 的就业市场

表明就业市场趋势的最佳数据来源是各种就业委员会。

从 2018 年底的趋势来看,需要 Angular 或 React 技能的工作数量大致相同,而 Vue 的数量仍然只是这个数字的一​小部分(大约 20%)。

如果您想获得更多最新的分析,您可以试试Google Trends 搜索,它分解了过去 12 个月React 工作、Angular 工作和Vue 工作的搜索趋势。数据嵌入如下:

如果您想查看您所在地区的求职趋势,Google 趋势还会按地理位置对其进行细分。

如果您严格从当前就业市场的角度来看,最好的选择是学习 Angular 或 React。但是,鉴于 Vue 在过去三年中越来越受欢迎,使用 Vue 的项目或采用 Vue 的新项目可能需要一些时间才能达到要求更多开发人员的成熟度。

第 2 部分:社区与发展

现在您已经熟悉了每个框架的历史和近期趋势,我们将通过社区来评估这些框架的发展。我们已经看到,对于所有框架,过去一年都定期发布增量版本,这表明开发正在全面展开。

让我们看看 Angular、React 和 Vue 的 GitHub 代码库统计数据(并注意 Vue 数字还包括单独的 Vue 3.0 存储库):

在比较 Vue 与 React 时,Vue 拥有大量的观察者、Star和Fork。这显示了 Vue 在用户中的受欢迎程度及其与 React 相比的价值。但是,Vue 的贡献者数量低于 Angular 和 React。

一种可能的解释是Vue 完全由开源社区驱动,而 Angular 和 React 有很大一部分 Google 和 Facebook 员工为存储库做出贡献。

从统计数据来看,这三个项目都表现出显着的开发活动,而且未来肯定会继续——只是这些统计数据不能成为决定不使用其中任何一个的基础。

您需要考虑的另一个指标是 GitHub 的“Used By”标志,它需要由存储库作者启用。这显示了 GitHub 上有多少其他存储库依赖于该存储库。Angular 的 GitHub 存储库显示有 170 万用户,React 目前显示近 570 万用户,而 Vue 显示其两个存储库的总和超过 167,000。三个框架之间存在很大差异,但这主要是因为 Vue 是较新的框架,并且不能说明整体需求的全貌。

第 3 部分:迁移

当您使用您选择的框架时,您不必担心框架更新会出现并弄乱您的代码。尽管在大多数情况下,从一个版本到另一个版本,您不会遇到很多问题,但重要的是要随时掌握脉搏,因为某些更新可能更重要,并且需要进行调整以保持兼容性。

Angular计划每六个月进行一次重大更新。在任何主要 API 被弃用之前还有六个月的时间,这让您有两个发布周期(一年)的时间来进行必要的更改(如果有的话)。

当谈到 Angular 与 React 时,Facebook 表示稳定性对他们来说至关重要,因为 Twitter 和 Airbnb 等大公司都在使用 React。通过版本升级通常是 React 中最简单的,使用react-codemod 之类的脚本可以帮助您进行迁移。

在 Vue 3 文档的迁移部分,Vue 提到Vue 2 和 Vue 3 之间有很多相同之处,而如果您从 1.x 迁移到 2,则90% 的 API 是相同的。有一个Vue 2 到 Vue 1 迁移辅助工具可在控制台上运行以评估您的应用程序的状态。

第 4 部分:使用 Vue、Angular 和 React

这里有一些重要的特征需要查看,主要是整体大小和加载时间、可用组件和学习曲线。

(1) 大小和加载时间

库的大小不会成为一个重要的因素,因为缓存和缩小现在是非常标准的。尽管框架的大小之间可能存在显着差异(例如 Angular 是最大的),但与平均网页大小(根据最新数据约为 2MB)相比,它们仍然很小。此外,如果您使用流行的 CDN加载这些库,则用户很可能已将库加载到其本地系统中。

(2) 组件

组件是所有三个框架的组成部分,无论我们是在谈论Vue、React还是 Angular。组件通常会获得一个输入,并根据它改变行为。此行为更改通常表现为页面某些部分的 UI 更改。组件的使用使得代码的重用变得容易。组件可能是电子商务网站上的购物车或社交网络上的登录框。

(3) 学习曲线

那么学习这些框架有多难?

尽管 Angular、React 和 Vue 的学习曲线很长,但它们在掌握后的用途是无限的。例如,您可以将 Angular 和 React与 WordPress 和 WooCommerce集成以创建渐进式 Web 应用程序。

(4) Angular vs React vs Vue:谁是赢家?

在这篇文章的结尾,让我们回顾一下每个框架的特性来尝试回答这个问题:Angular vs React vs Vue:你应该选择哪一个?

Angular 与 React 与 Vue 之争的答案是没有绝对正确的选择,这是您可能预期的结论。

这些库中的每一个都有自己的优点和缺点。根据您正在处理的项目和您的个人要求,其中一个将比其他更合适。在决定之前做自己的研究总是很关键的,特别是如果你要从事商业冒险而不是个人项目。

本文由闻数起舞翻译自Shaumik Daityari的文章《Angular vs React vs Vue: Which Framework to Choose in 2021》,转载请注明出处,原文链接:

https://www.codeinwp.com/blog/angular-vs-vue-vs-react/)

 

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯