jiafaner
V2EX  ›  问与答

跨平台桌面开发用啥

  •  
  •   jiafaner · Apr 10, 2019 · 8100 views
    This topic created in 2765 days ago, the information mentioned may be changed or developed.
    客户不要 swing,要求支持 Windows10 和 MacOS

    不能用 javascript

    现在用什么比较好?
    Supplement 1  ·  Apr 11, 2019
    确定了,用的 QT

    又要学 C++了
    37 replies  •  2019-04-10 23:16:49 +08:00
    loading
    loading
    Apr 10, 2019 via Android
    1
    请两波人算了,不用 js
    ian19znj
    ian19znj
    Apr 10, 2019
    2
    1. Qt.
    2. .NET
    iniko
    iniko
    Apr 10, 2019
    3
    Electron
    mobaui
    mobaui
    Apr 10, 2019
    4
    net core
    Blanke
    Blanke
    Apr 10, 2019
    5
    javaFX?
    cxtrinityy
    cxtrinityy
    Apr 10, 2019 via Android❤️1
    6
    Flutter 😏
    penisulaS
    penisulaS
    Apr 10, 2019
    7
    客户不让用指定语言是什么鬼
    jiafaner
    jiafaner
    OP
    Apr 10, 2019
    8
    @kzfile 因为客户有一个 IT 部门,他们有自己的规定。
    jiafaner
    jiafaner
    OP
    Apr 10, 2019
    9
    @ian19znj QT 必须学 C++吗? .NET 不能用在 MacOS 吧?
    gitjcc
    gitjcc
    Apr 10, 2019
    10
    @jiafaner 现学 C++ 恐怕来不及吧,直接招会的。技术选型还是要根据需求来,满足需求的情况下综合效率、成本等考虑选择方案。另外可以问一下客户不用 JavaScript 的原因,毕竟开发效率要高一些。
    Luckyray
    Luckyray
    Apr 10, 2019
    11
    不用 swing 是因为难用? JavaFX 怎么样?
    loveour
    loveour
    Apr 10, 2019
    12
    PySide2 ?
    loginv2
    loginv2
    Apr 10, 2019
    13
    PyQt Lazarus
    huangdadaxian
    huangdadaxian
    Apr 10, 2019
    14
    Delphi
    Nasei
    Nasei
    Apr 10, 2019 via Android
    15
    c++ 就用 qt,c#有社区开发的跨平台 ui 框架
    learnshare
    learnshare
    Apr 10, 2019
    16
    Qt
    TypeScript (投机取巧
    chenhui7373
    chenhui7373
    Apr 10, 2019
    17
    QT 或 JavaFX

    激进一点就是 Flutter
    midasplus
    midasplus
    Apr 10, 2019 via Android
    18
    Qt
    ian19znj
    ian19znj
    Apr 10, 2019
    19
    @jiafaner #9 Qt 必须学 C++, 用 Qt 不会 C++的,用 PyQt,go-qml 的,都是歪门邪道。。。
    .NET 可以用 Xamarin 跑在 MacOS 上, 社区里还有例如 Avalonia 等等,但稳定性欠佳。
    jiafaner
    jiafaner
    OP
    Apr 10, 2019
    20
    @ian19znj 谢谢

    给 Boss 提了各个方案,Boss 定了用 QT,又要学 C++了,知乎搜索了一下,被吓到了,,,,,,,C++学的难,用的难
    murmur
    murmur
    Apr 10, 2019
    21
    qt 用的比较多比较成熟 wps 什么用的都是 qt
    idea 这种能吧 java 程序做的又好看又好用的 太少了
    benson458
    benson458
    Apr 10, 2019 via iPhone
    22
    怕学 c++麻烦那就 PyQt 吧
    jamblues
    jamblues
    Apr 10, 2019 via iPhone
    23
    必须 delphi
    peyppicp
    peyppicp
    Apr 10, 2019
    24
    不用 swing 用 javafx 多好
    BCy66drFCvk1Ou87
    BCy66drFCvk1Ou87
    Apr 10, 2019
    25
    electron 或 qt
    leon0903
    leon0903
    Apr 10, 2019
    26
    感觉 javafx 好一点, qt 不会 C++ 很难用。
    shootsoft
    shootsoft
    Apr 10, 2019 via iPhone❤️1
    27
    Qt + Python 也是可以的,给你个例子 https://github.com/shootsoft/PlutoVideoSnapshoter

    不过坑也不少…
    xdlucky
    xdlucky
    Apr 10, 2019
    28
    说服 boss 用 electron, 速度快呀
    chungzhao
    chungzhao
    Apr 10, 2019
    29
    @xdlucky 第一次听这种话:Electron 速度快
    xdlucky
    xdlucky
    Apr 10, 2019
    30
    @chungzhao 不是 electron 速度快, 是开发速度快
    droiz
    droiz
    Apr 10, 2019
    31
    我来说一个:redlang (手动狗头
    H0H
    H0H
    Apr 10, 2019
    32
    作为技术商人,理性的说,跨平台 GUI 方案最适合的真的就是 Swing。Java 本就是市场占有率最高的语言,而且 JVM 本就是跨平台的最成熟使用最广泛的方案,技术人员很容易招聘,也很容易培养。

    更好的是,遇到客户对于 GUI 的某些特殊需求,自己扩展 Swing 组件自行绘制一个组件就能解决。而且 Java 有异常的话,命令行模式启动看下异常调用栈直接就解决问题了。C++忽然崩溃了都不知道到底哪错了,定位时间完全看老天。

    其他的像.Net ,本就对非 Windows 平台支持不够好,出问题了未必容易解决。至于嵌套浏览器的各种 Web 化方案,在各大操作系统是否足够稳定,长期运行是否不泄露内存,根本不知道有没有大厂商测试过。起码截止目前为止也没见哪个主流软件这样用。像迅雷这种软件,貌似也没实现跨平台,而是 Windows、Mac 各开发一套(根据界面布局完全不同推测)
    jlkm2010
    jlkm2010
    Apr 10, 2019
    33
    javafx
    ian19znj
    ian19znj
    Apr 10, 2019❤️1
    34
    @jiafaner #20 加油,学了 C++,再看其他语言都是小儿科。
    lfmy
    lfmy
    Apr 10, 2019
    35
    qt ?
    allinQQQ
    allinQQQ
    Apr 10, 2019
    36
    别用 Java 写 GUI 就好
    inframe
    inframe
    Apr 10, 2019 via Android
    37
    jetbrains 用 Java 写了这么多大型 IDE (其实就一个 233)表明 Java 可以很好支持桌面开发
    当然 swing 用的人没有其他系列多

    可以都做个 demo 比较一下,看看有什么优缺点
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2442 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 83ms · UTC 15:37 · PVG 23:37 · LAX 07:37 · JFK 10:37
    ♥ Do have faith in what you're doing.