Polymer vs Angular 2 vs React:终极比较
已发表: 2021-10-05在这里,我们检查了 Google 和 Facebook 等巨头目前提供的 3 个最流行的框架和库——它们之间的差异, React 与 Polymer 或 Angular 的对抗,以及它们适合的选项——基本上概述了使用 Polymer 的优势对比 Angular/React。
内容:
棱角分明。
反应。
聚合物。
聚合物与角度。
反应与角。
这是你的选择。
请注意,所有结论都不是最终结论,而是基于 Mind Studios 的专业知识。
当您想到软件开发时,选择正确的技术是最需要解决的问题之一。 如果要绘制平行线,这就像选择未来房子墙壁的颜色一样——你在这所房子里的感觉将取决于它。
因此,就像您选择编写移动应用程序的语言一样,您也为您的 Web 应用程序选择(例如)一个 JavaScript 框架 - 这可能是完全无法忍受的,让您完全发疯以及所有与之相关的愉快事情。 现在我们有几个非常受欢迎的框架——Angular和React,小开发者的部分坚持Polymer,还有一个新的Vue最近受到了大量关注; Polymer vs React 和 Polymer vs Angular 2 的对比将在这里仔细检查。
让我们简要地研究一下它们中的每一个。
棱角分明。
正如他们的官方网站上所说,“Angular 是动态 Web 应用程序的结构框架。 它允许您使用 HTML 作为模板语言,并允许您扩展 HTML 的语法以清晰简洁地表达应用程序的组件。 Angular 的数据绑定和依赖注入消除了您原本必须编写的大部分代码。 这一切都发生在浏览器中,使其成为任何服务器技术的理想合作伙伴。”
由于 Angular 2+ 最初于 2009 年开发,现在由 Google 维护,这就是为什么它有一定数量的库来处理表单和表单处理。
Angular 有许多贿赂开发人员的好处,例如:
广泛用于SPA(单页应用)创建
允许创建一个“反应式网页”,其中 HTML 不会重新上传
之后更容易开发和维护
现成的架构
庞大的国际社会
反应
React 作为一个 Javascript 库,主要以构建接口为主要目标,它有 4 个核心部分:简单组件、有状态组件和应用程序 + 站在外部插件上的组件。
React 的主要优点与 Angular 非常相似,但有明显的不同:
也广泛用于SPA(单页应用)创建
同样,允许创建一个“响应式网页”,其中 HTML 不会重新上传
之后更容易开发和维护
...还有一个庞大的国际社区
但是:具有极其轻量级的结构,这使得 React Native 非常适合交互式视图。
还有一个不同的 JS 框架,也被 Facebook Inc 覆盖并用于移动应用程序开发 - React Native。 阅读我们的文章 React Native vs Native App Development 何时以及如何使用它。
聚合物
正如 Wiki 所说,Polymer Web Components 是一个开源 JavaScript 库,最常用于使用 Web Components 构建 Web 应用程序。 (对于那些知道什么是 Web Components 的人,向下滚动)
Web Components 是一个独立的块,由表单、HTML 标签、HTML 模板、HTML 导入组成,可以在整个项目中重复使用。
[来源:开发者 Mozilla]
在 Web 组件 Polymer 中,Shadow DOM 的概念不用于 Web 属性构建。 它还可以仅与少数浏览器兼容 - Google Chrome,并且在最新版本 2.o 中添加了与 Safari 浏览器的兼容性。 常规 HTML 也用于聚合物性能的架构投影。
总体而言,所有这些框架都服务于特定的 Web 开发目的,并且它们中的每一个都非常适合特定的项目类型。 但它们并不相同——我们试图强调它们彼此之间的主要差异。
聚合物与角度
在查看这 2 个流行的框架时,您会发现一些不同之处:
- Polymer 拥有庞大的现成解决方案库,开发人员可以从中挑选出适用的元素并在项目中实施。
相反,Angular 没有这么大的; 虽然有一个用于 Web 表单创建和处理的标准库集。 - 在 Polymer 中,组件在一个 HTML 文件中完整描述。 在 Angular 的情况下,组件可以分成几个文件:
JS组件
CSS文件
HTML模板
具有组件依赖项的文件(对于页面上额外使用的那些)
- Angular 更结构化,更精细; 虽然 Angular 被拆分为模型,但 Polymer 有一个 1 文件流。
- Agular 中有服务- 允许引入通用功能编号,这分别减少了要编写的代码总量。 在 Polymer 中,您需要单独描述每个组件的所有请求。
然而,HTTP 请求在 Polymer 中变得简单; 在 Angular 中,您需要完整地描述 HTTP 功能,而有一个已经制作好的 Polymer 元素。
第二轮比较包括两个非常流行的 React 和 Angular 工具之间的比较。
反应与角
- Angular 提供了一个完整的开箱即用的项目结构。 在 React 中,您可以选择构建文件的方式。
- Angular 中有TypeScript - 一个类型化的 JavaScript 超集,由 Microsoft 构建和维护,并由 AngularJS 团队选择进行开发。
大型项目 TypeScript 有助于更快地探索情况 - 当您看到函数提供或接受时,无需深入研究源代码。 React 完全基于 JavaScript,你只能拥有一个 JS.x 模板。 - 为了就地转换 HTML,它们使用特定的语法,由于它与 Java Script 有点不同,因此您需要先研究它。 在实现 React 时,您只需要知道常规的“if...then...else”Java Script 语法,这降低了复杂性。
- 在 React 中,您需要明智地选择 HTML 请求,而 Angular 的 HTTP 客户端开箱即用,运行良好,将所有第三方集成放在一边。
- React 的生态系统非常庞大,并且充满了已经构建的解决方案。 我并不是想说 Angular 的系统很小——它只是少了现成的例子,更多的是“自己动手”编写代码。 更大的生态系统也会带来更好的 SEO - 可见性,使用 React 的开发人员可以享受。
为什么要使用 React?
其中一种情况:如果您充满热情并希望实施一个简单快速的解决方案。
什么时候应该使用 Angular2+?
最佳情况:您是团队成员,并且与您的团队一起从事一个大型项目。 在这里你最好使用 Angular,因为它的技术支持更方便一些..
这是你的选择。
对于 2019 年出现的问题,没有最终答案——选择哪个框架和 Web 组件比较——总会有特定的情况,其中一个或另一个更有效。 毕竟,我们试图列出 Polymer 与 Angular 与 React 比较的竞争优势和不利情况,以使您作为前端开发人员更容易选择悖论。
我们希望这对您有用 - 如果您需要更多信息,请与我们联系,让我们为您提供帮助。
由 Artem Chervichnik、Alex Kirsanov 和 Elina Bessarabova 撰写。