kotlin 还是 flutter? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
BearCookie
V2EX    Android

kotlin 还是 flutter?

  •  
  •   BearCookie 2024-07-17 09:35:00 +08:00 10957 次点击
    这是一个创建于 527 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这么多年过去了,貌似还没有标准答案啊

    29 条回复    2024-07-18 09:23:38 +08:00
    HongJay
        1
    HongJay  
       2024-07-17 09:36:55 +08:00
    就不是一个东西,咋能标准
    hailang1485
        2
    hailang1485  
       2024-07-17 09:40:19 +08:00
    有跨端需求就是 flutter ,没有就 kotlin
    flytsuki
        3
    flytsuki  
       2024-07-17 09:41:19 +08:00
    我一般都是 flutter ,如果做的偏调用硬件多的就 kotlin+flutter 模块
    InkStone
        4
    InkStone  
       2024-07-17 09:43:33 +08:00
    kotlin 跨端都才刚起步,而且做的跟 flutter 也不是同一件事情啊
    kxks145
        5
    kxks145  
       2024-07-17 09:44:16 +08:00 via Android
    要是跨端的话就用 flutter,要是有一些硬件调用啥的还是原生好用
    Yasuke
        6
    Yasuke  
       2024-07-17 09:44:49 +08:00
    @hailang1485 kt 也可以跨端了
    monkeylmj
        7
    monkeylmj  
       2024-07-17 09:45:29 +08:00
    你是想说 kotlin multiplatform 和 flutter ? 前者刚起步没多久,flutter 都这么多年了
    zoharSoul
        8
    zoharSoul  
       2024-07-17 09:47:37 +08:00
    kotlin 应该对比 dart 吧
    和 flutter 什么关系?
    Kamiyu0087
        9
    Kamiyu0087  
       2024-07-17 09:54:09 +08:00
    你指的是 Jetpack Compose ?
    mainjzb
        10
    mainjzb  
       2024-07-17 09:55:06 +08:00
    KMP 是 HTML 标准,每个浏览器可以显示的不一样,原生更流畅
    Flutter 是 Canvas 每个东西都自己绘画,跨端 UI 保证完全一致
    BearCookie
        11
    BearCookie  
    OP
       2024-07-17 09:55:59 +08:00
    @Kamiyu0087 对的,没表达好
    kx5d62Jn1J9MjoXP
        12
    kx5d62Jn1J9MjoXP  
       2024-07-17 09:57:40 +08:00
    有钱大公司 kotlin ,没钱小公司或压榨型公司 flutter
    HoseaDev
        13
    HoseaDev  
       2024-07-17 09:59:12 +08:00
    我选择了 Flutter 。因为 Flutter 相对成熟点。
    tanranran
        14
    tanranran  
       2024-07-17 10:02:02 +08:00
    flutter 把,kotlin 的 KMP 轮子目前太少。不过如果你愿意自己造轮子,KMP 还是很好的
    milukun
        15
    milukun  
       2024-07-17 10:04:09 +08:00
    必然是 flutter 呀,flutter 小程序都有第三方的 MPflutter2.0 了
    但是 KT 所谓跨平台,看到他的 web 的写法,简直令人崩溃
    RightHand
        16
    RightHand  
       2024-07-17 10:04:38 +08:00 via Android
    当前还是 flutter 吧,毕竟 iOS KMP 还没 release
    nocmt
        17
    nocmt  
       2024-07-17 10:04:46 +08:00
    @milukun flutter 库感觉还是太少
    300
        18
    300  
       2024-07-17 10:10:14 +08:00 via Android
    @nocmt compose 也不多呀
    公司这边尝试了几次都没能转过去
    resource 目录功能也刚加入不久

    还有个问题是新项目还好,功能一点点写。老项目一堆 java 包,加上屎山,牵一发而动全身。转成 kmm 兼容可能改一个文件顺带着要改 20 个+
    MoonLin
        19
    MoonLin  
       2024-07-17 10:14:19 +08:00
    @milukun 那是以前脑抽时的事了,现在改成 wasm 实现了,之前的 html 那套诡异的写法已经被抛弃了
    NewTab12138
        20
    NewTab12138  
       2024-07-17 10:17:40 +08:00
    做跨端需求,flutter 已经很成熟了
    ExplodingDragon
        21
    ExplodingDragon  
       2024-07-17 10:17:53 +08:00
    @MoonLin #19 kt / wasm 比 flutter 卡,可能是还处于 Alpha 的原因
    x1aoYao
        22
    x1aoYao  
       2024-07-17 10:29:27 +08:00   1
    Dart 有点丑,Kotlin 优雅多了。不过跨平台 UI 的话,现在 Jetpack Compose 远没有 Flutter 成熟吧
    oliveira
        23
    oliveira  
       2024-07-17 11:11:9 +08:00
    React Native
    iflint
        24
    iflint  
       2024-07-17 11:34:59 +08:00
    rust
    debuggerx
        25
    debuggerx  
       2024-07-17 11:52:51 +08:00
    @x1aoYao 如果跟 java 比,kt 可能确实算“优雅”,但凡写过其他新一点的主流语言,就会觉得它复杂又糟糕说句难听的,屎上雕花积重难返。。
    Lambert2022
        26
    Lambert2022  
       2024-07-17 12:24:32 +08:00
    Swift
    wsseo
        27
    wsseo  
       2024-07-17 12:28:23 +08:00
    arkts
    wwalkingg
        28
    wwalkingg  
       2024-07-18 08:57:17 +08:00
    《 Compose Multiplatform 和 Flutter 改选择哪个?》

    1. 个人更喜欢 Compose 的写法。
    2. Compose Multiplatform 的跨平台手段是 Kotlin Multiplatform ,相对于 Dart 的 FFI 。KMP 在 java 、jvm 上有原生性能,在 ios 、其他 navtive 上是接近原生性能,由 Kotlin/Native 负责。Dart 是通过 Channel 来和原生代码交流,如果没有数据交换,是原生性能,但是如果有了数据交换,那性能损失很大。像是多平台视频播放之类的,我会选择 cmp 、ui 为主的我会选择 flutter 。
    3. 在生态上,KMP 的 jvm 部分生态成熟。其他部分生态还不行,但是近年来约来越多了。Flutter 的生态很好,需要的、不需要的,都已经有轮子了。
    4. 在框架本身的成熟度上来说。CMP 的 stable 是 android+desktop(jvm)。Flutter 是 android+ios 。CMP 的 desktop 选择了加入 jvm 生态,而不是使用 native 。Flutter 的 desktop ,并不是 flutter 的核心,甚至咩有多窗口。
    BearCookie
        29
    BearCookie  
    OP
       2024-07-18 09:23:38 +08:00
    @wwalkingg 老哥说的非常详细啊,谢谢老哥
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4783 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 03:53 PVG 11:53 LAX 19:53 JFK 22:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86