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

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

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

    项目要对接系统硬件肯定只能.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 小时 22 分钟前
    我用的 Go+Vue+Wails
    xyhuangjia
        26
    xyhuangjia  
       21 小时 4 分钟前
    flutter, vue 之类的了解一下?
    mumbler
        27
    mumbler  
       21 小时 3 分钟前
    反正都是 AI 在写代码,你管它用什么技术呢,只看结果就好
    roundgis
        28
    roundgis  
       20 小时 58 分钟前 via Android
    Maui 问题多得一逼

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

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

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