前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >为什么我们选择使用 React 而不是 Angular 构建新 UI

为什么我们选择使用 React 而不是 Angular 构建新 UI

作者头像
顶级程序员
发布于 2018-05-03 08:14:20
发布于 2018-05-03 08:14:20
2.8K0
举报
文章被收录于专栏:顶级程序员顶级程序员

我们在2013年推出了Cloud Elements集成平台的v1版本,这个产品在过去几年里一直为客户和公司发展提供了良好的服务。但是2017年,Web技术迅速演变,从而使用户期望也进一步发展。现在是我们重新思考整个开发者流程的时候了,这也为我们重新思考我们的技术栈提供了一个机会。

在产品发布周期和发布期限的世界中,技术的选择至关重要。以下是我们一路走来的历程,帮助你揭开一些关于React的实用亮点。

我们来自哪里

在React之前,我们使用AngularJS,这可能是当时被选中的最流行的前端框架。 但是如上所述,时过境迁,AngularJS v1.x的统治已被其年轻的小弟Angular 2所篡夺。 离开AngularJS v1.x的一个主要目的是这个框架的生命结束的可预见性。 虽然它仍然得到积极的支持,但这是一个向新事物转变的好机会。

使用 JavaScript 框架的优点

开发团队知道继续使用 JavaScript 框架将提供几个显著的优点:

效率:通过结构良好的预构建模式和功能,可以更快地实现过去需要数月和数百行代码才能实现的项目。

安全性:JavaScript 框架内置安全测试,并且可以得到由成员和用户也作为测试人员的大型社区支持。

成本:大多数框架是开源和免费的。由于它们可以帮助工程师更快地构建定制解决方案,因此 Web App 的最终价格将会降低。

为什么选择 React

当在考虑构建我们新 UI 的不同选择时,React 显然是一个明智的选择,因为它的描述性,高效性和灵活性。与 Angular 不同,ReactJS 是一个基于 JavaScript 的开源库,带有 JSX 编译器。它主要关注用户界面,允许我们创建可重用的 UI 组件。

React 都是基于组件的。使用 React 构建应用程序是将这些组件中的许多组合在一起,将应用程序 UI 带入生活 -- 非常像乐高玩具!这些封装的组件管理自己的状态,因为组件逻辑是用 JavaScript 而不是模板编写的,你可以轻松地通过应用程序传递丰富的数据,而不用担心 DOM 中的状态。

你可以为应用程序中的每个状态设计一个简单的视图,并且 React 会在数据更改时处理组件的呈现。

虽然有些人将争取完全无状态的组件,但 React 的真正威力和性能来自于接受应用程序状态概念。

使用 React,你应该永远记住,它实际上并不是一个 JS 框架,而是一个用于渲染视图的库。

虽然有许多框架可供选择(例如,Vue,Ember 和 Angular 2),但 React 具有一些关键优势:

  1. JSX 是一种 JavaScript 语法,它启用了 HTML 的引用,并使用 HTML 标签的语法来渲染子组件。它促进机器可读代码的构建,并提供了一个在编译时验证文件中组合组件的能力。
  2. 由于使用虚拟 DOM,与 Angular 1.x 相比,它带来了极大的性能提升。除此之外,React 组件可以在应用程序之间创建和重用。
  3. ReactJS 和 AngularJS 的主要区别在于 React 是以 JS 为中心的,而 AngularJS 是以 HTML 为中心。JavaScript 要比 HTML 更强大,这使得 React 更加简单,集中和一致。

React 如何改进了我们的开发体验

React 通过 Stackoverflow,Reactiflux Chat,Freenode IRC,Facebook 和 Twitter 等论坛提供支持,这也让我们在选择时更容易做出决定。

React 可能不会做任何事情,但它提供了一个补充工具的列表,包括调试工具,组件工作台,JSX 集成,基本入门工具包,全栈入门工具包,模型管理以及与其他平台紧密合作的其他工具。

React 是 Facebook 和 Instagram 的用户界面使用的框架,这也显示出了它动态,高流量应用程序的效率。React 可能是增长最快的JS“框架” —— 截至今天,GitHub 有超过 1,000 个贡献者。

尽管 React 有一个学习曲线,但它使应用程序开发变得简单易懂。此外,它非常适合复杂,高负载的场景和下一代软件解决方案。

数据来源: https://insights.stackoverflow.com/survey/2017

React 提供了一些有用的开发者工具来创建需要零配置的应用程序。随着平台的不断增长,React 不断发布新功能和升级。最近发布的是 webpack 2,因直接编写和导入 ES6 模块,且不需要将它们编译到 CommonJS 中而有名,这有助于捕获更多的错误。

是什么使得 React 与众不同

React 本身不是一个框架。如前所述,它应该被认为是视图渲染引擎或组件模型。

React 提供可重复使用的可配置组件,让您快速入门。网络上有许多易用的 React 组件,几乎涵盖了所有方面:表单(react-form),状态管理(Redux),SPA 路由(react-router),实时消息(reactfire),管理异步任务(react-axios),绘图(react-sparklines)-- 不胜枚举。

这是一个很好的图表,显示了 React 和 Angular 之间的主要区别:

数据来源: https://da-14.com/blog/reactjs-vs-angular-comparison-which-better

结论

当你考虑转向使用 React 或基于 React 构建时,了解你的数据以及你希望将如何发展是你在迈步前进之前必须弄清楚的。例如,React 使用单向数据绑定,其中数据流仅以单一方式进行。因此,你将需要始终关注数据发生变化的地方,使其在大型应用程序中更容易进行调试。

你还需要深入了解你需要解决的业务问题,以及你需要什么数据来回答这些问题。我们是跨团队的数据驱动型组织。因此,在工程中,我们使用监控和数据收集来了解哪些虽然需要花费时间来投入,以及如何最好地利用我们的资源。总的来说,在基于 React 上构建新的 UI,我们克服了困难,但我们从来没有忘记过我们的主要目标 —— 减少耗费的时间以提升价值、数据的灵活性,同时留下进步和创新的空间。

  • 来自:开源中国社区
  • 链接:https://www.oschina.net/translate/why-we-built-our-new-developer-ui-react-instead-angular
  • 原文:https://www.programmableweb.com/news/why-we-built-our-new-developer-ui-react-instead-angular/analysis/2017/07/06
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-09-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 顶级程序员 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
从React和angular看技术路线的分歧
无论ReactJs还是其它什么,我们在看的时候都要看它们的思路、方面,而不要一开始时就扎进它的代码细节中。。。 最近在看一些reactJs的资料,有一些收获,写成文章跟大家分享一下,其中很自然的也会有我自己的一些主观看法,请大家批判的阅读。 React这个东西是facebook搞出来的,如果是国内搞出来的是否还能还能这么火么?这个问题是我在知乎上看到的。这个问题的出发点很有意思,不去探究react本身如何,而是去撕它背后的干爹,呵呵 我为什么提这个问题呢,因为这个问题的立场是我个人主观上最反感的。 我的立场
web前端教室
2018/02/06
1.1K0
React 困境与未来,何时迎来自己的“Angular.js 时刻”?
2012 年,横空出世的 Angular.js 一举改变了前端开发的格局,在市场上迅速取得成功。仅仅两年之后,开发团队又推出了 Angular 2,基于新的范式对原始库进行全面重写。但包括我自己在内,不少开发者都不愿修改现有应用来适应新的设计思路。于是在新项目中,Angular.js 不再作为优先选项,市面上其他出色的框架开始迎来自己的机会空间。
深度学习与Python
2023/08/09
3510
React 困境与未来,何时迎来自己的“Angular.js 时刻”?
「前端架构」React,Angular还是Vue,太难选了?看完秒懂。
我们必须承认,我们在这些框架方面有着极不平等的经验。然而,我们将尽量保持公正,并弄清楚React何时可能不是最佳选择,但首先,简短介绍:
架构师研究会
2020/11/09
6.4K0
「前端架构」React,Angular还是Vue,太难选了?看完秒懂。
Vue(MVVM)、React(MVVM)、Angular(MVC)对比
昨天阿里内推电面一面,面试官了解到项目中用过Vue,就问为什么前端框架使用Vue而不适用其他的框架,当时就懵了。因为只用过Vue,不了解其他两个框架,今天就赶紧去了解一下他们之间的区别。大家发现如果本文中哪个地方不对,欢迎来访。
lin_zone
2018/09/03
3.4K0
前端流行框架那么多,该如何选择?
A:现在前端完全写原生代码的越来越少了,反过来越来越多的人使用各种前端框架来解决问题。这样做确实有很多好处,不仅能提高开发效率,还包括UI效果会更好,能改善用户体验,提高浏览器的兼容性等等。
高一峰
2020/09/22
9160
为什么现在的开发者总是拿 Vue.js 和 JavaScript 巨头 Angular、React 比较?
Vue.js 是一个用来构建 web UI 的 JavaScript 库,基于 MIT 开源协议。Vue.js 于 2013 年首次分布,但是在接下来的两年内,并没有太多的 web 框架领域的开发者关注。到了 2016 年,Vue.js 名声大噪,获得了极大的关注,以至于现在除了像 Angular 和 React 这样的重量级 JavaScript 库,又多了 Vue.js 这样的一个选择。
疯狂的技术宅
2019/03/28
2K0
为什么现在的开发者总是拿 Vue.js 和 JavaScript 巨头 Angular、React 比较?
多种前端框架的优缺点「建议收藏」
Web前端目前现有的UI框架:Element、Bootstrap、JqueryUi、Foundation、Semantic UI、Pure、UIkit Web前端目前现有的JS框架:JQuery、Zepto、VueJS、AngularJS、ReactJS、backbone 、ember
全栈程序员站长
2022/08/04
3.8K0
为什么我们选择使用 React 而不是 Angular 构建新 UI
我们在2013年推出了Cloud Elements集成平台的v1版本,这个产品在过去几年里一直为客户和公司发展提供了良好的服务。但是2017年,Web技术迅速演变,从而使用户期望也进一步发展。现在是我们重新思考整个开发者流程的时候了,这也为我们重新思考我们的技术栈提供了一个机会。 在产品发布周期和发布期限的世界中,技术的选择至关重要。以下是我们一路走来的历程,帮助你揭开一些关于React的实用亮点。
疯狂的技术宅
2019/03/28
2.4K0
为什么我们选择使用 React 而不是 Angular 构建新 UI
VueJS && ReactJS 如何?听听别人怎么说
使用所有新的库和框架,很难跟上所有这些库和框架,也就是说,这就需要您决定哪些是值得花时间的。
笔阁
2018/09/04
1.2K0
VueJS && ReactJS 如何?听听别人怎么说
前端开发框架简介:angular 和 react
根据用户提供的文章内容,撰写摘要总结。
腾讯IVWEB团队
2017/03/13
5.6K0
Vue.js 很好,但是比 Angular 或 React 更好吗?
Vue.js 是一个用于创建 web ui 的 JavaScript 库。结合其他的一些工具,它也可以成为一个“框架”。通过我们的上一篇博客,想必你已经知道 Vue.js 是顶级框架之一,并且在很多场景下已经替换了 Angular 和 React。这就引出了本文要讨论的话题:‘Vue.js 很好,但是比 Angular 或 React 更好吗?’。
疯狂的技术宅
2019/03/28
1.6K0
Vue.js 很好,但是比 Angular 或 React 更好吗?
React vs Angular,到底那个更好用
在编程领域,Angular 和 React 对于前端开发人员来说是目前最流行的两款 JavaScript 框架。
程序狗
2021/12/24
5.9K0
前端三大框架vue,angular,react大杂烩
摘要:从angular的诞生独步天下,到现在三大框架平分天下,基本形势已经趋于稳定。每一个框架从诞生到受欢迎,都有其特定的原因和背景。不同的开发者选择时,也是依据于其特定情景下的原因和背景。 一、为什么前端会被vue,angular,react瓜分?    不知道大家有没有发现,这三个框架除了都是前端框架之外,还大有搞基的成分存在。注意他们三个的名字,分别以v,a,r 开头,我这么一说,你是不是忽然间就想到了什么。哈哈,正是如此,将他们组合起来不就是javascript中无处不在的鬼东西么?var
企鹅号小编
2018/01/16
2.2K0
Angular2入坑指南
序 对后端开发来说,前端是神秘的,眼花缭乱的技术,繁多的框架,出名的不出名的好几百种,看是“繁荣”,其实显得杂乱无章,但是我们在做开发的时候,技术选型还是主流的那么几个:浅析angular,react,vue.js Node.js。 node 官网:https://nodejs.org/ nodejs不是一个js框架,千万不要认为是类似jquery的框架,nodejs是js运行时,运行环境,类比java中jvm。做前端的没用过nodejs都不好意思说自己是前端。nodejs是和jvm同等地位的js运行环境,
xiangzhihong
2018/01/26
2.1K0
2021 年最佳 JavaScript 框架
据 Stackoverflow 的 2021 年开发者调查,JavaScript 已连续第八年成为使用最多的语言,有 67.7% 的受访者选择它。之所以如此受欢迎,主要是因为 JavaScript 是通用的,可以用于前端和后端开发和测试网站或 Web 应用程序。
用户7365393
2021/09/19
6450
都 9012了,该选择 Angular、React,还是Vue?
AngularJS 自2009年诞生,至今已有十年历史。在这短短十年中,其对 Web 社区的发展产生了十分深远的影响。作为一款优秀的 JavaScript 框架,在其推出一年后,便在全球引起了广泛关注,如今更是在Google的 600 多款产品中得以成功运用,如Firebase控制台、谷歌分析、谷歌快车、谷歌云等。
葡萄城控件
2019/05/25
2K0
Angular、React 和 Vue 三大框架,Web 开发该如何选择?
本文最初发布于 Northell 博客,经原作者授权由 InfoQ 中文站翻译并分享。
深度学习与Python
2021/03/30
1.8K0
Angular、React 和 Vue 三大框架,Web 开发该如何选择?
10个最受欢迎的 JavaScript 框架,以及它们的主要特征和功能
多年来,业界已经发布了大量 JavaScript 框架,怎样进行选择可能是一个挑战。如果你感到困惑,不知道应该选哪个或者究竟哪个适合你,那么我已经帮你解决了问题。在本文中,我将列出用来构建 Web 应用程序的前10个 JavaScript 框架。
用户5827212
2020/01/17
4.2K0
8分钟为你详解React、Angular、Vue三大框架
当前世界中,技术发展非常迅速并且变化迅速,开发者需要更多的开发工具来解决不同的问题。本文就对于当下主流的前端开发技术React、Vue、Angular这三个框架做个相对详尽的探究,目的是为了解开这些前端技术的面纱,看看各自的庐山真面目。
极乐君
2020/06/02
22.4K0
8分钟为你详解React、Angular、Vue三大框架
前端学习
http://www.userinterface.com.cn/ (设计网站导航)
超然
2018/08/03
2.4K0
前端学习
推荐阅读
相关推荐
从React和angular看技术路线的分歧
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档