RError.com

RError.com Logo RError.com Logo

RError.com Navigation

  • 主页

Mobile menu

Close
  • 主页
  • 系统&网络
    • 热门问题
    • 最新问题
    • 标签
  • Ubuntu
    • 热门问题
    • 最新问题
    • 标签
  • 帮助
主页 / 问题 / 660364
Accepted
Mr_Epic
Mr_Epic
Asked:2020-05-01 01:18:38 +0000 UTC2020-05-01 01:18:38 +0000 UTC 2020-05-01 01:18:38 +0000 UTC

网页性能和 Electron/NW.js

  • 772

据我了解,Electron/NW.js 本质上只是打开一个包含所需内容的浏览器窗口,但是如果您获取一个网页并在 Chrome 中打开它并将同一页面推送到 Electron/NW.js,会有不同吗在性能?
性能是指 CSS 动画和 JS 执行速度。(页面加载时间不是特别感兴趣)
示例任务:

  • (CSS) 当悬停在图像上时,它会增加 - FPS 下沉
  • (JS+CSS) 当点击一个链接时,标准动作被取消并且页面滚动 - 从点击到开始滚动的时间,以及滚动时的 FPS
  • (JS) 解析JSON字符串——字符串处理时间

我会很高兴以及猜想和有根据的答案。

javascript
  • 2 2 个回答
  • 10 Views

2 个回答

  • Voted
  1. Best Answer
    Uladzimir Palekh
    2020-05-01T01:37:41Z2020-05-01T01:37:41Z

    理论上,Electron 和 NW.js 的性能应该可以与对应的桌面版 Chrome/Chromium 相媲美。我没有测试它,但我没有注意到我正在处理的应用程序的资源密集型部分有太大差异。

    NW.js 0.22 之前的版本在编译为 V8 时性能受到显着影响,快照用于保护应用程序代码免遭反编译。自 0.22 版以来,此问题已得到修复。

    • 1
  2. Разработчик Разработчик
    2020-05-01T19:40:32Z2020-05-01T19:40:32Z

    据我所知,就性能而言,Electron 更快(从字面上看,应用程序启动和响应来自外部的请求仅快了几毫秒)。

    发动机在发展方面的比较:

    源代码保护

    Electron 没有任何机制来保护你的源代码。鉴于 Asar 是一个简单的 tar 存档,事实上任何人都可以将您的程序“解压”为普通存档并访问所有资源和源代码,因此 Asar 几乎不是一个可接受的安全性。

    NW.js 允许您通过 V8 快照构建受保护的可执行文件。当然,此解决方案不会将 JavaScript 编译为本机代码(如文档所述),也不提供完整的源代码安全性。它基本上只是非常好的混淆代码。但如果唯一的选择是让源代码完全开源,那么许多开发人员会更喜欢 V8 Snapshot,即使考虑到大约 30% 的性能损失。 获胜者:NW.js

    开始时间

    我没有专门尝试测量应用程序启动时间,但我的个人经验是 Electron 应用程序在 Windows 和 OSX 上的启动速度明显更快。即使禁用 V8 快照,NW.js 应用程序的加载速度也会慢得多。 获胜者:电子

    开源

    当年,在 Node.js 发展停滞不前的时候,Electron 迈出了支持 IO.js 的大胆一步。这意味着 Electron 致力于支持高级 JavaScript 功能,而 NW.js 更专注于支持向后兼容性(至少在理论上)。

    此外,人们不能不注意到 Electron 的高速发展。每周有超过 100 次提交,每月有 10 次发布。开发团队在github上积极解答问题。另一方面,NW.js 仍然是 0.15 版本,github 文档似乎已经过时了。例如,您经常会看到对名称“node-webkit”的引用,即使该项目在几年前已重命名。 获胜者:电子

    成就列表

    尽管 NW.js 的出现时间比 Electron 长,但据我所知,还有许多基于 Electron 的流行应用程序。从这个 NW.js 列表中,除了 Popcorn Time 和 Koala 之外,很难挑出任何重要的东西。另一方面,Electron 列表看起来更加可靠:- Atom - Slack - Visual Studio Code - Cocos Creator - Pixate Pixate 获胜者: Electron

    所以我会大胆的选择Electron。

    • 1

相关问题

Sidebar

Stats

  • 问题 10021
  • Answers 30001
  • 最佳答案 8000
  • 用户 6900
  • 常问
  • 回答
  • Marko Smith

    Python 3.6 - 安装 MySQL (Windows)

    • 1 个回答
  • Marko Smith

    C++ 编写程序“计算单个岛屿”。填充一个二维数组 12x12 0 和 1

    • 2 个回答
  • Marko Smith

    返回指针的函数

    • 1 个回答
  • Marko Smith

    我使用 django 管理面板添加图像,但它没有显示

    • 1 个回答
  • Marko Smith

    这些条目是什么意思,它们的完整等效项是什么样的

    • 2 个回答
  • Marko Smith

    浏览器仍然缓存文件数据

    • 1 个回答
  • Marko Smith

    在 Excel VBA 中激活工作表的问题

    • 3 个回答
  • Marko Smith

    为什么内置类型中包含复数而小数不包含?

    • 2 个回答
  • Marko Smith

    获得唯一途径

    • 3 个回答
  • Marko Smith

    告诉我一个像幻灯片一样创建滚动的库

    • 1 个回答
  • Martin Hope
    Air 究竟是什么标识了网站访问者? 2020-11-03 15:49:20 +0000 UTC
  • Martin Hope
    Алексей Шиманский 如何以及通过什么方式来查找 Javascript 代码中的错误? 2020-08-03 00:21:37 +0000 UTC
  • Martin Hope
    Qwertiy 号码显示 9223372036854775807 2020-07-11 18:16:49 +0000 UTC
  • Martin Hope
    user216109 如何为黑客设下陷阱,或充分击退攻击? 2020-05-10 02:22:52 +0000 UTC
  • Martin Hope
    Qwertiy 并变成3个无穷大 2020-11-06 07:15:57 +0000 UTC
  • Martin Hope
    koks_rs 什么是样板代码? 2020-10-27 15:43:19 +0000 UTC
  • Martin Hope
    user207618 Codegolf——组合选择算法的实现 2020-10-23 18:46:29 +0000 UTC
  • Martin Hope
    Sirop4ik 向 git 提交发布的正确方法是什么? 2020-10-05 00:02:00 +0000 UTC
  • Martin Hope
    faoxis 为什么在这么多示例中函数都称为 foo? 2020-08-15 04:42:49 +0000 UTC
  • Martin Hope
    Pavel Mayorov 如何从事件或回调函数中返回值?或者至少等他们完成。 2020-08-11 16:49:28 +0000 UTC

热门标签

javascript python java php c# c++ html android jquery mysql

Explore

  • 主页
  • 问题
    • 热门问题
    • 最新问题
  • 标签
  • 帮助

Footer

RError.com

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

帮助

© 2023 RError.com All Rights Reserve   沪ICP备12040472号-5