• 请不要在回答技术问题时复制粘贴 AI 生成的内容
James369
V2EX  ›  程序员

跨平台技术哪家强?

  •  
  •   James369 · Feb 3, 2021 · 8369 views
    This topic created in 2100 days ago, the information mentioned may be changed or developed.
    最近在关注了一些跨平台技术,不知道用哪个好,比如:

    Qt,老牌桌面跨平台方案,免费,但也支持移动端。Qt6 增加了不少新性,支持 3D 统一层,动画更酷炫等。
    Flutter,谷哥出口新鲜劲旅,移动端高性能方案,但也宣称支持 Web 、桌面和嵌入式平台。
    Unity3D,主要针对 3D 应用的跨平台,但我一直看好它,因为它支持很多的平台,而且可以 Gpu 加速。一直希望它能增加 2D 支持来统一天下。
    Html,真正的跨平台界面标准,真正的一统天下,我最看好它,主要缺点:对原生硬件支撑弱。


    问题是:
    你心中的最理想的跨平台方案是什么,看好哪个?
    如果要快速大范围铺出产品(应用消费型,纯软件),应该选用哪个方案?
    34 replies  •  2021-02-04 18:12:56 +08:00
    murmur
    murmur
    Feb 3, 2021❤️1
    1
    目前来说国内 html 一骑绝尘,对,我说的就是微信小程序,真的大规模商用、大厂背书、而且海量日活的技术
    murmur
    murmur
    Feb 3, 2021
    2
    html 的 native 支持弱得看谁,微信这个级别的手机测试还没哪个第三方社区框架可以叫板
    Acccc
    Acccc
    Feb 3, 2021
    3
    uni-aa
    encro
    encro
    Feb 3, 2021
    4
    缺少两个主流:
    .net 5
    java
    James369
    James369
    OP
    Feb 3, 2021
    5
    @encro .net 和 java 更多是后端服务吧
    silencelixing
    silencelixing
    Feb 3, 2021
    6
    跟硬件相关的,还是用 QT 吧
    cjh1095358798
    cjh1095358798
    Feb 3, 2021
    7
    普通应用还得是 h5
    ByteRan
    ByteRan
    Feb 3, 2021❤️1
    8
    Html,你说得硬件可以用各种套壳来解决

    PC:electron
    Android/iOS/H5/各个平台小程序 :uni-app
    James369
    James369
    OP
    Feb 3, 2021
    9
    @tanranran 对 flutter 怎么看,号称也支持 web 和嵌入式
    ByteRan
    ByteRan
    Feb 3, 2021
    10
    @James369 #9 flutter 现在 web 和 PC,性能不行还是测试版不成熟,移动端还行
    wanguorui123
    wanguorui123
    Feb 3, 2021
    11
    绕了一大圈,最后还是 HTML,香!
    rockddd
    rockddd
    Feb 3, 2021❤️2
    12
    很不巧,我们公司都有涉及...目前是 pc 端 qt,安卓 ios 端 flutter,3 维展示 u3d 。不过我是后端,也仅仅是知道没有哪个在我们公司通吃。
    XIVN1987
    XIVN1987
    Feb 3, 2021
    13
    现在好多工具软件用 electron 开发,,

    Qt 挺好,,就是 C++比较难,,PyQt/PySide 更易用些
    encro
    encro
    Feb 3, 2021
    14
    @encro

    .net 5,java 有很多 PC 端和移动端的跨平台框架啊。
    注意是.net 5 。
    loshine1992
    loshine1992
    Feb 3, 2021
    15
    Flutter 现在只有移动端能打,桌面和 Web 都不行
    crackhopper
    crackhopper
    Feb 3, 2021❤️2
    16
    都用过。我觉得 MVP 阶段能 H5 就 H5,更快一点,后续再说(移动端 RN,桌面 electron,Web 就随意选择了)。u3d 不可能往应用方面做,特效和性能还是主要的,估计主要瞄准 ue4 来搞了; qt 说实话写起来挺重的,毕竟 c++,但对性能敏感的场合能更好点。未来的跨平台,我会看好 flutter 一点;用的不多,目前支持也不够,不过整体从跨平台 app 角度设计语言的方式,我觉得还是更有前景的。
    ericgui
    ericgui
    Feb 3, 2021
    17
    @loshine1992 而且还只是安卓,iOS 肯定还是 Swift
    gdrk
    gdrk
    Feb 3, 2021
    18
    H5 套各个平台的壳,一个 hello world 就几十 m 的那种
    xinxing260
    xinxing260
    Feb 3, 2021
    19
    根据产品类型和目标用户进行技术选型
    Sapp
    Sapp
    Feb 3, 2021
    20
    现在普通应用还是 electron 用的多
    huqi
    huqi
    Feb 3, 2021
    21
    回归原生
    lower
    lower
    Feb 3, 2021
    22
    没有银弹,按需技术混合着搞也许是较为合理的办法
    DoctorCat
    DoctorCat
    Feb 3, 2021
    23
    对性能要求的话,Qt 体验不错。
    对开发成本有要求的话,H5 可以满足。
    KeyboardManAnAn
    KeyboardManAnAn
    Feb 3, 2021
    24
    微软的 MAUI 跨平台也正在开发中,未来或许可以一战
    sc3263
    sc3263
    Feb 3, 2021❤️1
    25
    主要做桌面端。用过 Qt5 、PyQt5 、Electron 、原生,调研过 Flutter 。

    Qt5 性能接近原生,上手后开发速度其实很快的。QML 其实很不错,但是学的人用的人都太少,很多坑只能自己填。对各平台下的特性支持的一般,需要自己封装。如果用到了 Qt Web Engine,可能会遇到显卡兼容性相关的问题。
    PyQt5 开发速度极快,但 PyInstaller 打包时不时的会出点幺儿子。以及 Python 本身的性能瓶颈,同样的动画效果,C++实现好不费力,Python 实现能跑满单个核心。
    Electron 开发速度快,各平台下的特性支持全,开发到打包到分发到异常收集,都有完善的解决方案。社区活跃度很高,有啥需求 /bug,很快就能处理。唯一的缺点大概就是体积占用大,运行效率稍微低一点了。
    Flutter 桌面端目前还是玩具,不建议自己去踩坑。

    心中最理想的跨平台方案:核心业务逻辑用 C/C++实现。在各平台下用原生语言去实现界面交互和使用系统特性。但绝大部分场景下,不需要这么重的方案。
    确定下公司当下是否真的需要跨平台方案,是否真的需要移动端和桌面端使用同一套方案。目前并没有哪套框架能够完美通吃桌面端和移动端。各个框架依然需要针对各个端进行适配开发。实际工作量并不比单独维护要小,甚至难度会更高。
    快速出产品的话,桌面端除非有历史经验 /包袱,否则建议无脑 Electron 。移动端没有上线的项目,没有发言权。
    maxxfire
    maxxfire
    Feb 3, 2021
    26
    跨平台都有坑,还是原生是王道
    byaiu
    byaiu
    Feb 4, 2021 via iPhone
    27
    qt6 根本下不下来,吃相太难看了
    pecopeco
    pecopeco
    Feb 4, 2021 via iPhone
    28
    小程序的性能和包大小限制就注定了它走的不是和 app 正面竞争的道路,有自己的生态和适用范围,将来是不可能全面取代并竞争过其他跨平台技术的
    MakHoCheung
    MakHoCheung
    Feb 4, 2021
    29
    跨平台肯定 swiftui,说的就是跨苹果多设备,哈哈哈
    CismonX
    CismonX
    Feb 4, 2021
    30
    如果是交互形式比较简单的 GUI 应用,Tk 也是一个不错的选择
    psklf
    psklf
    Feb 4, 2021
    31
    底层 C++ 上层各写各的。
    hatsuyuki
    hatsuyuki
    Feb 4, 2021
    32
    飞书团队用 Rust 写跨平台客户端的非 UI 部分 https://www.bilibili.com/video/BV1jv411t77Z/
    AaronLee01
    AaronLee01
    Feb 4, 2021
    33
    React native 就这么被淡忘了么,其实开发体验还可以啊
    2021kaixin
    2021kaixin
    Feb 4, 2021
    34
    都是垃圾,都是打包
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2870 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 175ms · UTC 13:21 · PVG 21:21 · LAX 05:21 · JFK 08:21
    ♥ Do have faith in what you're doing.