随着社交媒体和用户天生内容的爆炸式增长,互联网正在向更好的方向发展。
为了跟上时期发展的步伐,供应更好的交互性,开拓职员开始构建库和框架来简化交互式站点的构建。
2006 年,John Resig 发布了 jQuery,使得在 HTML 中编写客户端脚本变得更加随意马虎。
随着韶光的推移,其他类似的项目涌现了。
刚开始,它们是一个弘大的单体,而且把项目的构想强加给开拓者。
现在,这些库已经开始向紧凑型轻量级库转变,可以非常随意马虎地添加到任何运用程序中。
让我们来看看个中最受欢迎的三个。

JavaScript 框架概览

开始一个新项目总是要做许多决定。
个中一个关键决策便是选择得当的框架或库。
幸运的是,Vue.js 是一个功能非常多样化的库,可以处理各种各样的任务。

html做网站用什么框架三年夜框架Web开辟若何选择 Java
(图片来自网络侵删)
Vue.js

Vue.js 这个库让你可以将交互性和附加功能添加到任何利用 JavaScript 的编码环境中。
Vue 既可以在单独的页面上用来办理大略的任务,也可以作为成熟的工业运用程序的根本。
Vue.js 是一个用于构建图形用户界面的高等框架。
它也可以与一些当代工具和附加库一起,用于构建繁芜的单向运用程序。

Vue 库个中一个最大的优点是它不须要任何分外知识。
任何 Vue 运用程序都是利用 HTML、CSS 和 JavaScript 编写的——熟习这些工具就可以立即投入事情。
纵然你以前从未做过客户端开拓,也可以基于以前的 MVC 设计模式利用履历进行构建,这种模式与 MVVM 非常相似。

React

借助 React 库,我们可以轻松地创建交互式用户界面。
集成 React 时,不须要变动当前项目的代码,它只卖力渲染界面,不会额外带来痛楚。

React 系统支持用户界面更新,使得为运用程序创建健壮的模块化组件更加随意马虎。
React 库通过数据更新来实现大部分用户界面掩护事情,这对开拓职员来说非常令人愉快(难怪它如此受欢迎)。

Angular

Angular 差不多是一个完全的开拓环境。
它包含一整套程序,包括 TypeScript 编译器、AOT 编译器和 Web 做事器。
Angular 的 Web 做事器用于调试利用这个框架开拓的站点。
它是用同一个 Angular CLI 实用程序启动的,要启动 Angular CLI,你须要在 Windows 命令行中进入项目文件夹,并实行 ng serve 命令。

Vue、React 和 Angular 的紧张特色

React 最大的个中一个上风是:在稳定性和创新性之间做了很好的平衡,使得用户比较随意马虎适应。
这个缘故原由以及其他一些缘故原由使 React 保持了它的地位,并得到越来越多的人气。

图片来源:https://insights.stackoverflow.com/trends?tags=reactjs%2Cvue.js%2Cangular%2Cangularjs

大小

开拓框架的大小对未来运用的性能至关主要。
框架和运用程序必须在运用程序开始正常事情之前加载。

在这方面,Angular 最繁芜,有 143KB。
React 次之,有 43KB,而 Vue.js 只有 23KB。
除非你的运用特殊大,并且包含了大量的组件,否则最好利用更小的构造。

性能

在 Web 项目中,性能与 DOM 密切干系:DOM 在浏览器 / 代码中表示 Web 页面。
在发生更新时,你可以通过 DOM 掌握 Web 页面。

Vue、React 和 Angular 的性能会由于任务的不同而有所差异,但在大多数情形下,它们都非常高效和快速。
React 和 Vue 都实现了 DOM。
得益于其精心设计的构造,Vue 供应了出色的性能和内存分配。
这便是 React 和 Vue.js 优于 Angular 的地方:它们利用了虚拟 DOM——原始 DOM 的复本。

把稳:DOM 是一种将 HTML 文档的内容表示为工具的方法。
此外,还有一个用于管理指定工具的接口。
DOM 分常规 DOM(也称为真 DOM)和虚拟 DOM。
它们有什么差异呢?让我们来看一个例子。
如果你想修正在 HTML 标签中找到的某些信息,算法将会这样做:真正的 DOM 将更新所有标签,直到它找到它须要的片段。
在某些情形下,这会对性能和其他参数产生负面影响。
虚拟 DOM 则只更新必要的 HTML 块。

社区

React 是天下上最盛行的框架,这已不是什么秘密。
它越来越受欢迎,由于它供应了真正的 Promise。
React 的 Mental Model 看起来很可靠,其组件让创建用户界面变得更随意马虎,API 灵巧且富有表现力,全体项目给人的觉得是就该当那样。
对 API 库的描述也友好,更随意马虎给人留下良好的印象。

从那时起,React 库在基本观点和 API 方面就基本保持不变,但已经形成并发展出了一整套的知识和最佳实践,越来越多的人在利用它。
Angular 因其优点而备受赞誉,并拥有大量的社区支持。
遗憾的是,只管 Vue.js 有很多好处,但它并没有像它的竞争对手那样被开拓者所接管。

下面让我们从盛行度和干系性两个方面比较下这三个框架:

GitHub:目前,Vue.js 是最盛行的框架,只管它是最年轻的,这意味着越来越多的项目将利用它。
谷歌搜索:在谷歌搜索中,React 查询要求最多,紧随其后的是 Vue.js。
目前最不受欢迎的是 Angular.js。
Angular.js 的人气不才降,而 Vue.js 的人气却在上升。
劳动力市场需求:大多数职位空缺与 React.js 有关,然后是 Angular,再然后才是 Vue.js。
Vue、React 和 Angular:该选哪个?

为了选出最得当的库,你该当首先仔细剖析这些框架并理解自己的需求。
无论是有许多依赖项的现有项目,还是你想利用熟习的库进行开拓的新运用程序,Vue 都不会给你带来任何麻烦。
你可以连续利用 Bootstrap 或 Bulma 这样的 CSS 框架,保留为јQuery 或 Backbone 编写的组件,集成你最喜好的库实行 HTTP 要求,或利用 Promise 工具。

要开始利用 Vue 进行编程,你所要做的便是将 Vue.js 库连接到 Web 页面。
不须要繁芜的组装工具!
从头到尾开拓一个原型只须要 1 到 2 周的韶光,这让你能够尽早并常常地网络用户反馈。
Vue 2 引入了做事器端渲染(SSR)支持。
这让你可以最小化初期的数据加载,并根据须要要求新的视图和资源。
与高效的组件缓存相结合,可以进一步减少流量花费。

React 库能够做一些令人惊叹的事情。
由于全体用户界面都是用 JavaScript 定义的,以是你可以利用 JavaScript 的丰富功能在模板中实行各种操作。
你只会受到 JavaScript 特性的限定,而不会受到模板框架特性的限定。
当你想到完备用 JavaScript 定义的视觉效果时,你可能会想到很多引号、转义字符和 createElement 调用。
别担心,React 库许可你(选择性地)利用可以与 JavaScript 代码共存的 HTML-like JSX 语法定义可视元素。

React 与其他两个框架在以下理念上有所不同:

与其说它是一个框架,不如说它是一个库(最初是为了处理 UI 而创建的);由于它不受框架的限定,以是它的功能更多——更适宜专业人士,而不是初学者;在 Angular 中许多可以“开箱即用”的紧张特性,在这里必须单独连接(这种方法有优点,也有缺点,对付初学者来说是缺陷,由于须要做不必要的动作);更多地面向 JavaScript 而不是 TypeScript(只管每个版本对 TS 的支持都在增加);更便于创建原生 Android 和 iOS 移动运用程序;拥有大量适用于各种场合的第三方库(多于 Angular)。

Angular 已经被用在了许多规模最大、最繁芜的 Web 运用程序中。

图片来源:https://www.madewithangular.com/

Angular 借鉴了做事器端开拓中的一些最佳特性,并用它们来扩展浏览器中的 HTML 标记。
这样,创建具有增强功能的运用程序就更大略轻松了。
Angular 运用程序基于 MVC 设计模式构建,这个模型致力于创建具有以下特色的运用程序:

易于扩展:如果你理解了根本知识,纵然是最繁芜的 Angular 运用,你也很随意马虎就能够理解,这意味着你可以很轻松地扩展运用来供应实用的新功能。
易于掩护:Angular 运用程序很随意马虎调试,Bug 很随意马虎修复,这意味着长期运行的 Angular 运用也很随意马虎掩护。
测试工具:Angular 有良好的 go mod 和端到端测试支持。
因此,你可以在用户碰着之前找到并修复它们。
标准化:Angular 基于浏览器的内部功能,不会给你的事情带来任何阻碍。
这让你可以创建符合标准的 Web 运用程序,包含最新的功能(例如,各种 HTML5 API)、盛行的工具和框架。
这是一个框架——这意味着它设定了创建 Web 运用程序的规则,在初始阶段设定了特定的框架,让初学者可以少费脑筋。
Angular 功能极多,如果须要额外的东西,可以连接第三方模块。
Vue.js VS React:双向数据绑定

在 Vue 中,你可以轻松地将组件变量绑定到表单字段。
当你更改变量时,表单字段会更新,当用户变动表单字段时,组件变量也会更新。
这比编写 React 中的事宜处理程序要随意马虎得多。

此外,很多人喜好用图表展示框架的受欢迎程度,个中 React 是 Angular 的 2 到 3 倍。
它从创建移动运用程序(React Native)中获益颇多,由于与 Angular Ionic 比较,它更方便。
至于 Web 运用程序(ReactJS)开拓方面,统统就没那么大略了。

例如,对付 Web 运用程序,我创造,利用 Angular 比利用 ReactJS 更方便。

你可以自己考试测验并比较不同的方向或技能。
为此,你可以在谷歌趋势中输入一些关键字,它会为你画出俊秀的图表。

Vue.js vs React vs Angular

与之前的框架不同,Vue.js 是由一个人创建的,他认为 2013 年已经有的框架都太繁芜。
Vue 的第一个和第二个版本都是由一个人创建的,因此,在某些方面,它可能比竞争对手更糟糕,尤其是在安全方面。
Vue 3 是由一个开拓团队创建的,这意味着现在许多 Bug 和缺陷都得到了修复,框架本身的效率也得到了提升。

我该当学习 React 还是 Angular?

最好同时学习 Angular 和 React。
这两种框架各有优缺陷。
专家建议初学者首先学习 Angular,由于你所需的统统都是“开箱即用”的,这样更不随意马虎犯错(框架会帮你掌握)。
在学习了 Angular 之后,你可以学习 ReactJS 和 React Native。
其余,如果你只须要移动运用,你也可以直接跳到 React Native。
事实上,你只须要学习框架的特性,仅此而已。
别的的知识都是通用的(OOP、TypeScript、RP)。
学习框架本身 1 到 2 周就足够了,你已经可以创建大略的 Web 运用程序了。

结束语

显然,这三个框架都非常强大,但同时又很不一样。
它们有自己的上风和劣势,没有一个通用的公式可以用来决出一个绝对的赢家。
选哪个框架好,要看你正在创建的运用程序和你的特定需求。
在做决定之前有必要进行全面的研究。
对付那些从事商业投资而不是单个项目的公司来说,这一点尤其主要。

原文链接:

https://northell.medium.com/react-vs-vue-vs-angular-what-to-choose-for-web-development-abc5565d3f11