2022 年, desktop app 开发(macos, windows, Linux )的跨平台框架是什么?

2022-08-25 11:18:30 +08:00
 xiaochong

本人 JAVA 后端,有一些 react 的前端经验。打算开发一个 mac os 的小工具 app ,想了解下目前的跨平台框架对 desktop 的支持咋样?

  1. fluter
  2. react native
  3. 其他

关心几点:

  1. 成熟度和活跃性,未来发展
  2. 通用性,能否向 mobile ( ios ,android )和 tv ( tvOs 等)迁移

能沿用现在技术栈最好,也不很排斥新语言。感谢!

14721 次点击
所在节点    程序员
124 条回复
zhangxzh
2022-08-25 11:21:31 +08:00
Compose for Desktop ??
做过后端的话, 也不需要学新语言
hex2en
2022-08-25 11:22:19 +08:00
electron?
xiaochong
2022-08-25 11:25:02 +08:00
typo : flutter
xiaochong
2022-08-25 11:25:20 +08:00
@zhangxzh 去了解一下
dreasky
2022-08-25 11:34:55 +08:00
electron flutter 现在对桌面支持还不太好 还有个 rust 的 tauri
huohei
2022-08-25 11:38:38 +08:00
如果想迁移到移动端,flutter 可以考虑
Vaspike
2022-08-25 11:38:38 +08:00
推荐一楼说的 Jetbrains Compose
在这上面我已经产出多个软件,跨平台 Kotlin 走的 jvm 生态没得说,移动端的话,这个框架本身就是 Compose Jetpapck 移植到桌面端的
zhuweiyou
2022-08-25 11:40:04 +08:00
公司项目还是个人项目? 公司不要用偏门技术,招不到人来接手.
Bijiabo
2022-08-25 11:42:51 +08:00
建议明确一下需求,如果涉及到一些非界面相关的技术,例如音频、视频等,可能还要考虑硬件加速等场景,可能跨平台的开发相比选择特定平台相关的技术来说,更加痛苦。
stoluoyu
2022-08-25 11:54:27 +08:00
最近看到个 wails ,还比较新。
ysc3839
2022-08-25 11:59:39 +08:00
只考虑 Windows 和 macOS 的话可以试试 React Native ,否则建议 Web
respawn
2022-08-25 12:09:28 +08:00
.NET MAUI

仅提供选项

巨硬家的东西有个特色,有挺多人骂,一边骂一边用。
nojsja
2022-08-25 12:11:49 +08:00
有个新框架 tauri 可以了解一下,不过得学 rust ,界面就用 react 的 web 生态
sardina
2022-08-25 12:13:13 +08:00
flutter
Scirocco
2022-08-25 12:16:56 +08:00
flutter 我用下来感觉还是移动端为主,就是开发移动端顺便开发一个能用的桌面端这种感觉
renmu
2022-08-25 12:22:02 +08:00
electron 就是跨端霸主
dcsuibian
2022-08-25 12:43:35 +08:00
/t/861083
从功能实现上来说,那 Electron 应该是第一,毕竟 web 天生的跨平台优势。但是卡,要不是卡也就不需要别的了。

只有追求性能才考虑其它的。如果是 Flutter on Desktop 和 React Native for Windows + macOS 。那还是选前者吧。
1 、这俩都是移动端为主的,桌面端都还不咋样
2 、前者是 Flutter 官方在搞,后者是巨硬在搞而不是 Facebook 本家
3 、React Native 的原理是转成原生组件,安卓和 IOS 的差异已经是个问题了,现在 Windows 和 macOS 再来,不敢想。
thtznet
2022-08-25 12:50:29 +08:00
.NET MAUI +1
mxT52CRuqR6o5
2022-08-25 12:54:37 +08:00
RN 感觉不太行,因为桌面端的支持不是官方的,RN 源头上设计时就不会考虑桌面端的各种特性
相比之下 flutter 的桌面端是官方做的
lozzow
2022-08-25 13:04:07 +08:00
qt ?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/875271

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX