EmberJS 与 React

dsa*_*ich 2 comparison frameworks web ember.js reactjs

再会!我有个问题。计划开发一个大型网络项目,未来将扩大规模。我想知道选择 EmberJS 和 React 哪个更好?我有使用 EmberJs 的经验,但我想听听对这两个框架都有经验的专家的意见。我听说react更轻量,但同时,你需要包含很多库来添加像ember js这样的功能。请告诉我。很高兴看到一些不同条件下的基准测试。多谢你们!

Nul*_*uli 15

我一开始使用 React,后来转向 Ember。事实是,无论您使用什么工具,团队在开发前端/单页应用程序时面临的核心问题都是相同的。这些问题将包括学习业务、学习历史、努力解决如何不过度使用框架以及使用“平台”(使用 MDN 多于框架文档等)。一般来说,学习业务/现有产品比学习框架需要更多的时间。

对于 ember 整个生态系统的一些好处,这是 React 所没有的:

  • Ember 拥有更具凝聚力的生态系统,这使得升级更加直接。
  • Ember 的前端目标是减少应用程序之间的显着差异,以便您可以专注于功能。这包括状态管理、路由等内容。作为比较,Next.JS 中的一些功能是在上个月左右推出的,而 Ember 从一开始就拥有这些功能。
  • Ember 的不和谐是乐于助人的宝贵工具。有时有点以美国工作周为中心,但它是在您自己的团队之外获得更多同步帮助的首选之地。链接在这里: https: //discord.gg/emberjs(可以在社区页面上找到: https: //emberjs.com/community/)——React 也有一个不和谐的地方,但我发现它不太受欢迎,因为那里有大量的人流过。
  • 约定对于单页应用程序接近 SDK 空间中的任何框架来说都是关键。约定是可选的指导,是快乐路径默认值,一旦记住,生产力就会领先于没有约定的情况
  • Ember 大部分是“Just JS”。React 也有同样的主张,也许当他们使用类来处理事物时确实如此,但现在一切都需要钩子,并且过度使用 useEffect,人们最终编写的 React 比编写的 JS 还要多。使用 Ember,你仍然编写比框架更多的 JS。Ember 竭尽全力让您坚持使用 MDN,除了反应性和路由之外的任何事情。状态管理甚至允许“普通 JS”(由于 JS 本身的限制,有一些约定)

我听说react更轻量,但同时,你需要包含很多库来添加像ember js这样的功能。

这是事实,但是,它很快就不再重要了。Ember 只有 100KB (min+gzip) —— React(至少,我认为是 ~40kb (min+gzip),没有库 (react + react-dom)),并且你的底层框架的大小开始变得不那么大与应用程序的其余代码相比,它的作用非常快。除非您的目标是低连接区域并尝试让您的网站在 < 0.1 秒内加载,否则框架选择 w/r/t 大小也并不重要。(我也会这样说 Angular!)。

Fwiw,也许这有点免责声明,我觉得 React 是现代的 jQuery(白话中的用法几乎与 jQuery 相同)。几乎每个人都在使用它,因为几乎每个人都知道它。该工具好不好并不重要,它无处不在,但对任何事情都没有意见,并且依赖更广泛的社区来学习如何使用它。你不能仅仅用 React 来构建产品。

更愤世嫉俗的是,React 是雇主直接从训练营雇用非常廉价劳动力的途径。

顺便说一句,我注意到关于框架的一件事是,大多数“酷东西”(您想要日常使用的)都没有记录在框架文档中。它的知识源自框架知识以及网络本身可以做什么。

例如:

  • 谢谢!这是一个非常全面的答案。 (3认同)