V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
billbob
V2EX  ›  程序员

兄弟们,桌面开发到底是 MAUI 还是 avaloniaui?

  •  
  •   billbob · 1 天前 · 2241 次点击

    项目要对接系统硬件肯定只能.net 这一套了.

    目前比较纠结的是这两个怎么选.

    我之前开发是做 JAVA 的,对于我来说用哪个都得重新学习.

    36 条回复    2025-03-27 19:10:18 +08:00
    a33291
        1
    a33291  
       1 天前
    个人推荐 avaloniaui
    billbob
        2
    billbob  
    OP
       1 天前
    @a33291 有什么优势吗,我看这个不支持界面预览,会不会开发时候吃力
    flytsuki
        3
    flytsuki  
       1 天前
    我们用的 android,也能对接硬件
    Bazingal
        4
    Bazingal  
       1 天前
    UI 简单用 AvaloniaIUI ,复杂用 MAUI ,MAUI 坑多一些,但是可以用 MAUI blazor hybrid ,前端经验还能用得上
    a33291
        5
    a33291  
       1 天前
    @billbob 支持更多平台(比如 linux) 社区活跃(如果赚钱的话可以支持一下) 以及 maui 还得在沉淀几年

    反正都要新学,吃力啥的因人而异了
    hwdq0012
        6
    hwdq0012  
       1 天前   ❤️ 1
    都不考虑 qml + c++的方案吗, 硬件对接,ai ,音视频都轻轻松松
    billbob
        7
    billbob  
    OP
       1 天前
    @hwdq0012 c++更是盲区.客户要的是好看,酷炫.有几个硬件板卡,属于工业机
    billbob
        8
    billbob  
    OP
       1 天前
    @a33291 好 我再了解了解
    yituanmaoxian
        9
    yituanmaoxian  
       1 天前
    @billbob xaml 预览吗 支持的吧 我记得 rider vscode 都是支持的
    tangmanger
        10
    tangmanger  
       1 天前
    纯 windows wpf 首选 跨平台 avalonia ,MAUI 坑有点多
    brezeslow
        11
    brezeslow  
       1 天前
    MAUI 重心还是放在移动端的,很多控件都是默认移动端使用,在 windows 上的使用的后端是 winui3 不能支持 win7 ,而 avaloniaUI 可以通过一些操作实现运行在 win7 上,而且 avaloniaUI 还能在 linux 上用,
    这两个还可以用 AvaloniaMauiHybrid 实现 avalonia 和 maui 的相互嵌套
    Bronya
        12
    Bronya  
       1 天前
    不要考虑 MAUI ,坑很多,而且重心是安卓。

    纯 Win 就 WPF ,跨平台就 Avalonia 。

    需要 3D 支持就 Godot ,也能用来开发桌面程序,不过不是正经 GUI 。
    lujiaxing
        13
    lujiaxing  
       1 天前
    @billbob 支持界面预览的. MAUI 这东西还是算了吧, 坑一大堆. 目前可选的就只有 Electron 跟 Avalonia UI.
    azarasi
        14
    azarasi  
       1 天前
    跨平台就用 Electron 或者 Qt
    capric
        15
    capric  
       1 天前
    cxx-qt ,rust+qml
    Promtheus
        16
    Promtheus  
       1 天前
    qt 跨平台的确很棒 但是缺点就是资料太少了。。 遇到点问题好难查。。
    minami
        17
    minami  
       1 天前 via Android
    没必要,界面用你熟悉的就行,对接系统硬件的功能直接封装成库,别掺和到业务里
    kimixeon
        19
    kimixeon  
       1 天前
    Avalonia 或者 Flutter
    LaTero
        20
    LaTero  
       1 天前
    @billbob Qt QML 很好看很酷炫啊,缺点就是贵,但是开发者的体验会比 XML 好很多。WPF 那一套真的看一眼就头皮发麻,面向对象设计模式 ModelViewViewModel 这种可能还有人喜欢(特别是 Java 来的),但是要是做稍微动态一点的东西(比如说会变的列表项),什么 listview ,selector ,converter ,data template ,太恐怖了,因为字符串用得多还容易出错。而最要命的还是动画,你说的“好看酷炫”要是包含动画就有罪受喽。
    yangzzzzzz
        21
    yangzzzzzz  
       1 天前
    前两年用过 winui3 好看 精致 但是有些功能还是要掉 win32 的 api
    reallittoma
        22
    reallittoma  
       1 天前
    我们公司的跨平台上位机软件用的是 MAUI ,总体来说还可以。坑确实不少但基本都有相应的 work around 。Avalonia 最主要的问题是移动端支持才起步,很多基础设施都缺失,要自己从头手搓。
    reallittoma
        23
    reallittoma  
       1 天前
    当然,如果是全新的项目从零开发我还是比较推荐 Avalonia ,我觉得它们那套东西很有潜力。我们选用 MAUI 最主要的原因是旧项目从 Xamrin 迁移过来的。
    elechi
        24
    elechi  
       1 天前
    不跨平台就 wpf ,或者 blazor
    ETCartman
        25
    ETCartman  
       21 小时 52 分钟前
    我用的 Go+Vue+Wails
    xyhuangjia
        26
    xyhuangjia  
       21 小时 35 分钟前
    flutter, vue 之类的了解一下?
    mumbler
        27
    mumbler  
       21 小时 33 分钟前
    反正都是 AI 在写代码,你管它用什么技术呢,只看结果就好
    roundgis
        28
    roundgis  
       21 小时 29 分钟前 via Android
    Maui 问题多得一逼

    尽管如此 移动端还是勉强可用

    至于桌面版 我就没听有谁正经用来写过什么 app

    保险起见还是 avalonia 吧
    yituanmaoxian
        29
    yituanmaoxian  
       11 小时 5 分钟前
    @mumbler 大模型对于 avalonia 这种相对小众的框架还是不行,基本上是在胡说八道
    mumbler
        30
    mumbler  
       11 小时 1 分钟前
    @yituanmaoxian #29 钻牛角尖了,又不是你写代码,为什么非要用 avalonia 呢,用框架无非就是想少写代码,现在都不要你写代码了,大模型擅长什么就让它用什么,甲方少干涉乙方工作
    hwb
        31
    hwb  
       10 小时 49 分钟前
    Flutter:???
    yituanmaoxian
        32
    yituanmaoxian  
       10 小时 14 分钟前
    @mumbler #30 这能看出是钻牛角尖?只是针对你这句话,技术选型不能完全依靠 ai ,哪怕是前端这种 ai 比较擅长的。
    kingme
        33
    kingme  
       9 小时 2 分钟前
    electro+nodejs 也能对接硬件啊
    zhangeric
        34
    zhangeric  
       8 小时 43 分钟前
    不跨平台的话直接用 wpf,上 ai 写.
    lujiaxing
        35
    lujiaxing  
       52 分钟前
    @kingme 对嘛 gyp 一会儿 CONNECTION_RESET 一会儿 CONNECTION_TIMEOUT 对接点硬件解决 Node 版本问题与解决墙的问题的时间比写代码的时间还长. 别了吧还是.
    lujiaxing
        36
    lujiaxing  
       50 分钟前
    @hwb Flutter 就别参合桌面端开发了吧 好好做你的 app 去
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3190 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 12:01 · PVG 20:01 · LAX 05:01 · JFK 08:01
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.