想做个跨平台应用 + web ,只是展示数据,不会用到太复杂的 native api ,哪个方案比较简单
看了看 flutter ,看好多人说他死了,什么情况
1
flyun 2023-12-21 19:13:03 +08:00 5
关于 flutter 现在怎么样,我就发一个项目来说明好了
https://github.com/localsend/localsend |
2
street000 2023-12-21 19:51:48 +08:00 1
大太子 Flutter 还在和敌国的 RN 打得难分难解,谷歌又在和新妃 Jet Brains 联手让二太子 Compose 也加入战场。
二太子有 Android 团队和不用自己养的新妃加持,很难不认为谷歌要扶正 Compose 而冷落 Flutter 。 |
3
passon 2023-12-21 20:50:05 +08:00 1
活着,比 Android ,ios 好找工作
|
4
joyhub2140 2023-12-21 21:11:38 +08:00 2
@street000
我也觉得很奇怪,JB 家的 KMP 跨平台和 Flutter 明显是有重叠的,特别是 flutter 的生态发展了这么多年,Google 还要扶持 JB 家的。 难不成是,鸡蛋都不要放一个篮子? |
5
joyhub2140 2023-12-21 21:13:51 +08:00 1
回到楼主的话题,不用考虑了,目前最成熟的跨平台方案除了收费的 QT ,就只有 flutter 比较适合了,不过现在 flutter 做 web 还不行,flutter web 还没完全 wasm 化。
|
6
magic3584 2023-12-21 21:15:16 +08:00 1
活着呢啊,我还自己上架了一个 app
不过有前端经验的话,RN 也不错 |
7
iOCZS 2023-12-21 21:35:59 +08:00 1
同样是声明式语言,flutter 和 SwiftUI 、compose 之间还是有很大差异的。flutter 设计实现了很多 widget ,据说有 300+之多,但是常用的就一小部分。但是 SwiftUI 这种就很类似网页,虽然那么多 widget ,但是通过自定义就能搭建出所需要的 widget 。SwiftUI 能减少 widget ,是因为它有一种 modifier 的东西,可以以方法调用的形式来创建视觉效果。而 flutter 只有嵌套和增加属性。看起来 SwiftUI 远没有 flutter 所具备的复杂度。
|
8
luoway 2023-12-21 22:31:14 +08:00 1
用 Electron 简单。
flutter 对前端来说是死了,但凡能用上一点,就会有 `flutter-vue`、`flutter-react` 之类的框架库出现。但是 6 年过去仍然没有或者有过但匿了。我找到的唯一有用资讯是,以桥接的架构方式来实现 vue 、react 等开发 flutter ,目的是利用 flutter 的渲染引擎: https://github.com/openwebf/webf |
9
street000 2023-12-21 23:47:45 +08:00 via Android 1
@joyhub2140
估计是 Flutter 不贴合 Android 团队的需要,套了太多层,UI 也不够原生,还要引入跟 Java 生态不兼容的 Dart 。 另一边 KMP 由 JB 主导自己不用太出力,改改现有的 Kotlin 库顺便兼容 KMP 成本不大。 |
10
XCFOX 2023-12-22 01:04:42 +08:00 18
Flutter 是个知名度很大但实际上并不怎么流行的框架。
我用 LibChecker 检查我手机上的 APP 有很多使用了 Flutter 的 SDK 。但实际上全面使用 Flutter 的只有《哔哩哔哩漫画》,有些 APP 部分页面使用 Flutter:《咸鱼》《飞猪》,更多是使用了 Flutter 的 SDK 但我找不到哪个页面是用 Flutter 写的:《微信》《微博》《豆瓣》《优酷》。 Flutter 视图是完全自绘的,交互体验上和 native 有很多不同,因此可以很容易判断哪个页面是不是用 Flutter 渲染的。比如在 Flutter 页面上双指滚动就能双倍滚动。 Flutter 成也自绘败也自绘。自绘的好处是可以在所有平台上获得一致的视图。坏处则是比不过原生的动画流畅性和交互体验,这方面有太多的 issues 了:动画反馈会延迟 1~3 帧,无法使用 Android 12 的滚动回弹动画,滑动和翻页时有明显的掉帧,严重的着色器编译时卡顿( https://docs.flutter.dev/perf/shader ) 。 总的来说 Flutter 开发的页面用户体验相比原生是明显倒退的,这可能也是为什么大厂不全面使用 Flutter 的原因。希望 Impeller 引擎完善之后能改进性能问题。 说到 Flutter 就不得不提老对手 React Native 。 RN 这两年在性能上做了诸多努力:0.68 支持 Fabric 渲染器架构,使用 jsi 与原生进程通讯,使得 js 与原生进程的通讯不再成为性能瓶颈; 0.70 使用 Hermes 作为默认 js 引擎,性能提升 51% - 63% ( https://reactnative.dev/blog/2022/07/08/hermes-as-the-default ) 。 另外 React Native 始终使用原生渲染,没有上面说的 Flutter 的一大堆问题。 假如原生的用户体验是 100 分,那么 RN 的上限就是 100 分,Skia 引擎的 Flutter 的上限是 90 分,希望 Impeller 引擎的 Flutter 的上限能达到 95 分以上。 再说 Dart 语言:我觉得本身 Dart 是门很不错的语言,奈何它的对手太强了,compose 的 kotlin 、RN 的 ts + jsx 、MAUI 的 C#。在一众优秀语言里 Dart 反而是平庸的。 Flutter 的状态管理方案也很难评,Flutter 生态里没有可以媲美 vue3 、或者 React 的 zustand 、jotai 、valtio 的状态管理库。Riverpod 略显啰嗦,GetX 相当于买了个冰箱送了个油烟机。 在现下总的来看:MAUI 和 Compose Multiplatform 还 too young ,担心踩坑没人管,那么还是得看 React Native 和 Flutter 。RN 在性能上不输 Flutter ;语言层面 TypeScript + jsx 优于 Dart ;生态上 npm 比 dart 繁荣得多,微软、Shopify 、京东、美团、Discord 、小米 都在大规模使用 React Native 。 结论是推荐 React Native 。 |
11
IvanLi127 2023-12-22 01:53:50 +08:00 via Android 1
感觉 Flutter 不行,列表在旗舰机上才不容易卡顿掉帧,从刚入门算起,两年后再摸,还是掉帧... 真受不了
|
12
WebKit 2023-12-22 02:28:41 +08:00 via Android 3
Flutter 目前是跨平台第一☝️
|
13
murmur 2023-12-22 08:24:11 +08:00 1
连华为的新框架都是基于 flutter 的,这波 flutter 比分上来了
|
14
andytao 2023-12-22 08:55:02 +08:00 1
GTK4 跨平台已经很成熟了,GTK5 全面支持 3D 加速即将到来。
|
15
BORBER 2023-12-22 09:32:59 +08:00 1
还是 webview 吧。。 画界面谁能和 html 比
|
16
devcai 2023-12-22 10:23:05 +08:00 1
大厂基本都是在去 flutter 化,只有比较简单次级的业务场景才用,另外有部分大厂使用 flutter 的渲染引擎,上层又封装了。打开开发者模式看布局就可以看看哪些用到了。
|
17
BernieDu 2023-12-22 13:09:57 +08:00
apple 生态的独立开发肯定是不用这东西,swiftUI 自己的生态是跨 watch ,tv ,iPhone ,Mac ,visionPro 。而且小组件,灵动岛,spotlight ,siri ,cloudkit ,swiftdata 等一堆核心功能或框架没法用 flutter 去开发。目前小厂快速出项目,大厂写节假日的脏业务还是主要应用场景吧,实际效果我没深入体验过,给我的印象就是前些年的咸鱼。rn 给我的印象就是前些年的携程
|
20
jones2000 2023-12-22 23:53:41 +08:00
h5
|
21
lwjlol 296 天前
flutter 和 compose multi 虽然都能跨平台,但是不是对标的。 flutter 天生为了跨平台,compose multi 是 jetpack-compose 的副产物,出大力的是 jetbrain ,为什么?因为人家要推广 kotlin 啊。不知道楼上一帮不懂的人在一本正经的瞎说什么
|