为您提供最新最热的新闻资讯
提供一站式的产品与服务
新媒体工作室生产发布管理系统
电子商务运营平台
AI+融媒
融合媒体生产
融媒体综合管理系统
移动终端视音频快编审核系统
全媒体一键发布系统
大数据网络舆情汇聚系统
大数据调度指挥系统
文明实践中心综合管理系统
融合制播云拆条(云剪辑)
智慧党建综合管理系统
新媒体矩阵管理平台
框架之间的论战一直以来都是 JavaScript 社区的热门话题,也是业内的圣战之一。从刚开始的 jQuery,到后来的 AngularJS,再到现代框架,相关的讨论从未停歇。
参与者
自从 JavaScript 这场框架“战争”开始以来,Backbone 与 Sencha 等框架逐渐“体力不支”,在战斗中倒下了,它们所遗留下的只有大量需要维护的代码。而存活下来的,像 jQuery 则变得越来越强大,如今拥有一个庞大的社区;另外存活下来的还有像 Angular 这样没有预期中发展得那么好的框架,让人略感遗憾。
1.jQuery
jQuery 是一个快速、简洁的 JavaScript 框架,它可能是目前最老的参赛者了。由于 jQuery 曾经修复了浏览器之间的互操作性,因此它非常流行,但它的应用却很难扩展。
不过如今,jQuery 已经不是主流框架之一,也不再是大多数项目的最佳选择。
2.AngularJS
AngularJS 作为一个基于 JavaScript 的开源前端框架,目前它已经达到了生命周期终止的状态(EOL),未来将不再获得任何支持与维护,Angular 团队希望现有用户能够迁移到下一代的 Angular 框架中。
由于它曾是框架生态系统的一次巨大飞跃,因此有不少人依旧怀念它。但因为它已经不再被积极维护了,所以不算是一个竞争者。
3.Angular
Angular 是如今高效和开源的 JavaScript 框架之一,起初它的诞生是为了与 React 竞争。随着 AngularJS 越来越老,出现许多问题,而 React 却发展得很好的情况下, AngularJS 团队决定对其进行现代化改造,将 AngularJS 重写为 Angular。
Angular 最令人感到繁琐的应该就是其陡峭的学习曲线,它需要很多概念,因为并不是所有东西都是直截了当的。想要学好 Angular 是很不容易的——它既继承了 AngularJS 的学习曲线,又有像 RxJS 或分层依赖注入这样的困难之处。
(Ben Nadel 的原图)
Angular 存在的另一个问题是它至今还有许多目标没有达成。例如,自从 Angular 2.0 以来,不少人都期待能有一个简单的方法来创建服务器端渲染的页面,但直到 2022 年 2 月,Angular.io 网站自身在没有 JavaScript 的情况下仍然是无法工作的。
事实上,Angular 的最大问题是碎片化和版本升级。版本升级的困难程度甚至令用户不愿意冒险升级其应用,关于这一点,你可以在 npm 网站 上查看。
(有很多在使用旧版本的用户)
4.VueJS
Vue 是比 AngularJS 性能更强,且比 Angular 更稳定、更容易使用的框架。Vue 在其模板系统中非常接近最初的 Angular,它既保持了 AngularJS 的简单性,同时又从 React 获得了一些灵感。
不过 VueJS 在版本 1 和版本 2 中存在一个严重的问题:它不能很好地处理数组,编写者把他们错误选择更新算法导致的结果归咎于 JavaScript。此外,如果你不使用像 Vuex 或 Redux 这样的库,可能就会出现严重问题。你可以在这里看到一个在 AngularJS 中工作的应用程序,但却不能在 VueJS 中看到。
(Vue 文档的摘录,将其变化检测算法的局限性归咎于 JavaScript)
所幸,这个问题在版本 3 中已经得到了解决。
5.SvelteJS
SvelteJS 是一个逐渐强大的竞争者,它声称自己的主要优势是在构建时会将组件转换成高效率执行的命令代码。据 SvelteJS 表示,这比 React 采取的声明式更好。
SvelteJS 使用起来的确更简单,但转换成命令代码以及生成的组件并不像看起来那么容易。在某些情况下,SvelteJS 无法正确检测更改,当这种情况发生时,状态可能会被破坏并且视图也不会正确更新。这个问题引起了很多关注,导致 SvelteJS 像过去的 VueJS 一样,很难证明它其中的项目都是合理的。
6.StencilJS
StencilJS 作为基于 Web Components 设计的框架,从技术上讲,StencilJS 并不算是真正的框架。实际上,StencilJS 允许编写组件,并将其翻译到其他框架。如今,它可以将组件转换为 Angular、React、Vue 和 Web Components 组件。
7.Mitosis
你可能并没有听说过 Mitosis,但正是因为它让我写了这篇文章。Mitosis 是 Angular 的创建者 Misko Hevery 开发的最新框架,并且 Mitosis 与 StencilJS 具有相同目标—— 将其组件转化为许多框架。
8.React
React 是最古老的现代框架之一,在 npm 存储库中有超过 10 年的历史。尽管如今 React 已经发生了很大的变化,但它仍然与大多数以前的版本兼容。近年来,React 发展得越来越好,有人表示,是 React 钩子(React 函数组件的副效应,用来为函数组件引入副效应)创建了这个更好的框架。
不过 React 最厉害的地方并不是它的钩子或是任何可见的功能,而是别的地方——React 推动了 JavaScript 的最新标准,也推动了 JSX 的发展。React 不再是一个框架,但也许它从来都不是——它只是一个库。React 努力地推动标准,最终,它将自己从用户代码中移除。
最终的获胜者
获胜者当然就是……React,不过这并不是 React 本身,而是其背后的哲学。React 本身就是一个库,它可以被许多其他库所取代,例如 Preact 或 React Native。但如果你仔细观察,会发现 StencilJS 或是 Mitosis 与 React 非常相似,这并不是一个巧合,因为:
“最好的框架是将自己从用户代码中剥离出来的框架"
React 在很大程度上利用了 JavaScript 和 JSX(嵌入了 XML 的 JavaScript),而且用户代码对 React 来说是不可知的,只要稍加调整,完全相同的代码就可以在其他框架中运行。
因此,毫无疑问,React 是框架之战的最终赢家。
2022-05-05
M1 Mac:支持 USB-C,但不完全支持 2022-05-05
新版 Java 惊现“年度加密漏洞”,网友:还好我只用 Java 8 2022-05-05
Java 18 还未用上,Java 19 最新两大特性曝光 2022-05-05
IPFS最新消息 Filecoin挖矿靠谱吗? 2021-03-11
智微智能 Elkhartlake K075终端,零售产业新选择 2021-03-11
作为当前备受欢迎的营销活动之一,峰会能为很多企业的交流合作提供一个机会。在疫情面前,而现在横亘在企业面前的问题就是如何举办一场高大上的线上峰会活动。其实企业可以从线上策划开始做起,做好活动主题的策划、直播合作商的确定以及峰会活动的预热。下面我们一起来认识一下吧。
1、策划峰会活动的主题
作为线上峰会的第一步,好的峰会主题有画龙点睛之效。没有主题,目标人群难以辨认,活动文案如何撰写,活动目的是什么,在确定好直播主题之后,上述这些问题都能从中展开思考,并取得了良好的开端。
2、确定直播合作商
众所周知,线上峰会是通过直播的形式来进行的,那么企业就要选择一个可靠的直播公司来开展直播。选择合适的线上峰会系统能够有效助力企业快速搭建线上直播间,给予用户更好的直播体验。那么在选择的时候,企业一定要多对比,评估他们的峰会活动举办案例。
3、做好峰会活动的预热
想要提高参会人数和峰会的关注度,企业就需要提前做好峰会活动的预热推广,其中企业可以在不同的社交媒体上发布活动信息,比如海报、短视频等,这样才能提高峰会直播活动的热度,从而在直播开始时吸引更多人进入直播间。
文章转载:欢拓小编妹纸
2022-05-05
商业直播对企业打响知名度的重要性 2019-11-01
活动直播需要注意哪些问题? 2019-11-01
教育培训直播怎么样? 2019-11-01
搭建企业直播平台对于企业来说可以有哪些作用呢? 2019-11-01
一个有意思的比喻,理解什么是教育视频云 2019-11-01