V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MegatronKing
V2EX  ›  推广

从 API 工具软件来看桌面端跨平台各大框架的性能

  •  
  •   MegatronKing · 104 天前 · 2467 次点击
    这是一个创建于 104 天前的主题,其中的信息可能已经有所发展或是发生改变。

    首先立个盾:没有垃圾的框架,只有对性能不上心的开发者。

    前段时间桌面端跨平台框架讨论得火热,大家都提供了非常多不同角度的看法,有生态、性能、上手难度、社区、薪资等等。刚好我这段时间在调研竞品,就测试了下大家常用的几款 API 工具软件的性能情况。测试对象除了我自己的产品Reqable外,还有 Fiddler Everywhere 、Charles 、Postman 和 Insomina 这四个,大家都是支持 Windows 、MacOS 和 Linux 这三大桌面端平台。非跨平台的应用不再此列,如有其他使用了不同框架的跨平台 API 工具类应用,欢迎告诉我,有空补上。

    先说框架使用情况:

    • Reqable:Flutter
    • Fiddler Everywhere: Electron
    • Charles: Java Swing
    • Postman: Electron
    • Insomina: Electron

    目前只测试了 Mac 平台,结果如下:

    以上结果可能存在一定的误差但应该不会很大,每个框架都写个 Hello World 来测会更准确和有说服力,所以这个结果大家参考下就行,别太较真哈。

    测试细节:

    • 测试机器:MacBook Pro 2017 款。
    • 安装空间:从 DMG 安装包解压后直接看应用包大小。
    • 启动时间:开启屏幕录制,然后启动待测应用。完成录屏后,打开视频编辑,计算每个应用从点击图标到启动后加载出来页面静止的帧时间差。
    • 内存占用:启动应用后置于后台,在活动监视器中获取应用的内存使用情况。

    结论:

    • Flutter 在三个维度都表现优异,几乎是压倒性的优势。
    • Java 的安装空间不大,但启动和内存这两个维度很糟糕。
    • Electron 在三个维度都没有优势。但优化下还是能提升不少的,都是一样的框架,Insomina 有两个维度明显要好很多。
    17 条回复    2024-04-08 16:05:41 +08:00
    hanai
        1
    hanai  
       104 天前 via iPhone
    Electron 现在都要近 0.5GB 了…
    wheat0r
        2
    wheat0r  
       104 天前
    Electron 发挥稳定
    GPLer
        3
    GPLer  
       104 天前 via Android
    试试 Qt ?
    kneo
        4
    kneo  
       104 天前 via Android   ❤️ 5
    我发现我学会了看标题猜作者。
    jiangzm
        5
    jiangzm  
       104 天前
    测的很好,下次别测了
    SayHelloHi
        6
    SayHelloHi  
       104 天前
    Electron 虽然体积大 但是只要能挣到钱就行

    ---

    以前特不喜欢 Electron 主要原因 体积大

    自从有一次写了一个 N 简单的 Electron App 挣到了💰 觉得 Electron 真香呀~~😁
    murmur
        7
    murmur  
       104 天前
    postman 启动不就 4 秒多么,主要是联网同步数据慢
    gongxuanzhang
        8
    gongxuanzhang  
       104 天前
    最近用了 apifox 感觉还挺香的
    studycode
        9
    studycode  
       104 天前
    @SayHelloHi 老哥,app 叫啥名,我去助个力~
    mqllin
        10
    mqllin  
       104 天前
    下了一个 Reqable 启动是真的快
    MegatronKing
        11
    MegatronKing  
    OP
       104 天前
    @GPLer #3 我目前没有看到 QT 开发的相关的跨平台 API 工具软件,如果的话有请告诉我。
    MegatronKing
        12
    MegatronKing  
    OP
       104 天前
    @murmur #7 Postman 官网下的最新版本,第一次启动后选择不登录使用本地项目,关闭后再开始测试启动时间,没有缓存数据也不会联网同步数据。其他的软件也是这样操作,尽量公平一点,移除网络因素。另外,不同的软件版本,不同的设备测试出来的结果可能不大相同哦。
    lstz
        13
    lstz  
       104 天前 via iPhone
    楼主的软件能看出确实下了很多心思,这篇文章对比效果是很有说服力的。

    但拉踩可能会让路人反感,建议去掉第一句,软件是否垃圾,并不只取决于性能,还有功能性,交互性。在内存硬盘白菜价的今天,用户不会特别感知性能这方面,除非是特别特别差
    dragondove
        14
    dragondove  
       104 天前
    这个对比不是很能说明问题,这几个维度并不能直接反应软件是否流畅或者性能是否强悍。
    我换个比对的例子,普通的 java 应用和 python 应用对比,这三项 java 都比不过 python ,但是我相信不会有人说 python 比 java 性能好
    cvbnt
        15
    cvbnt  
       104 天前 via Android
    还有个跨平台的叫 bruno 也挺快,可能因为东西比较少
    conglovely
        16
    conglovely  
       103 天前
    @mqllin 感谢,用上了
    laters
        17
    laters  
       20 天前
    flutter.
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2827 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 15:11 · PVG 23:11 · LAX 08:11 · JFK 11:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.