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

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

  •  
  •   billbob · 12 天前 · 2700 次点击

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

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

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

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

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

    纯 Win 就 WPF ,跨平台就 Avalonia 。

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

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

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

    保险起见还是 avalonia 吧
    yituanmaoxian
        29
    yituanmaoxian  
       11 天前
    @mumbler 大模型对于 avalonia 这种相对小众的框架还是不行,基本上是在胡说八道
    mumbler
        30
    mumbler  
       11 天前
    @yituanmaoxian #29 钻牛角尖了,又不是你写代码,为什么非要用 avalonia 呢,用框架无非就是想少写代码,现在都不要你写代码了,大模型擅长什么就让它用什么,甲方少干涉乙方工作
    hwb
        31
    hwb  
       11 天前
    Flutter:???
    yituanmaoxian
        32
    yituanmaoxian  
       11 天前
    @mumbler #30 这能看出是钻牛角尖?只是针对你这句话,技术选型不能完全依靠 ai ,哪怕是前端这种 ai 比较擅长的。
    kingme
        33
    kingme  
       11 天前
    electro+nodejs 也能对接硬件啊
    zhangeric
        34
    zhangeric  
       11 天前
    不跨平台的话直接用 wpf,上 ai 写.
    lujiaxing
        35
    lujiaxing  
       11 天前
    @kingme 对嘛 gyp 一会儿 CONNECTION_RESET 一会儿 CONNECTION_TIMEOUT 对接点硬件解决 Node 版本问题与解决墙的问题的时间比写代码的时间还长. 别了吧还是.
    lujiaxing
        36
    lujiaxing  
       11 天前
    @hwb Flutter 就别参合桌面端开发了吧 好好做你的 app 去
    hwb
        37
    hwb  
       7 天前
    @lujiaxing 不行不行,我 Flutter 可是跨平台,全跨的那种
    rocky2024
        38
    rocky2024  
       4 天前
    只在 win 端, 两个都不建议使用, 一个是不成熟,一个是 不炫酷, 我推荐 WPF , 刘铁猛老师的视频或书籍看完就能上手, 而且 有很多 的开源的方案 可以直接使用

    MAUI 坑点太多了目前
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2846 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 14:55 · PVG 22:55 · LAX 07:55 · JFK 10:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.