V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
blinue
V2EX  ›  Windows

WinUI 3 的源代码已放出

  •  1
     
  •   blinue · 185 天前 · 3848 次点击
    这是一个创建于 185 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://github.com/microsoft/microsoft-ui-xaml/releases

    WindowsAppSDK 曾将开源作为卖点,但直到两年后才终于发布了部分源代码,而且无法编译。官方的说法是仅供调试,不接受贡献。这不是“open source”,而是“source available”。

    WinUI 3 处于烂泥扶不上墙的状态,就目前的开发状况,微软说不定又要另起炉灶了。

    20 条回复    2023-10-27 09:56:21 +08:00
    eagleoflqj
        1
    eagleoflqj  
       185 天前 via iPhone   ❤️ 6
    是 open source 还是 source available ,只看许可证,不看是否接受贡献。sqlite3 因为要保证 public domain 不接受贡献,draw.io 不信任外部贡献者的代码质量不接受贡献,不影响它们的开源属性。
    当然不能编译是太烂了,相当于事实上的 source available
    sloknyyz
        2
    sloknyyz  
       185 天前   ❤️ 1
    微软前前后后搞了多少套 ui 了,都没几个人用。
    zxCoder
        3
    zxCoder  
       184 天前
    是 c# 语言?
    forbreak
        4
    forbreak  
       184 天前   ❤️ 2
    微软传统,搞事情,搞着搞着不搞了。
    yolee599
        5
    yolee599  
       184 天前
    弃坑是微软老传统了,Visual Basic 6.0 ,Windows Phone ,都是搞着搞着就弃坑了
    wanguorui123
        6
    wanguorui123  
       184 天前
    微软官方的东西少碰
    weijancc
        7
    weijancc  
       184 天前
    @1145148964 #1 draw.io 竟然有这种操作, 我看贡献基本就两个作者在维护
    sky96111
        8
    sky96111  
       184 天前
    @sloknyyz 但好看是真的好看,设计感和统一性都很喜欢
    securityCoding
        9
    securityCoding  
       184 天前
    @wanguorui123 一般推荐是不要碰
    hez2010
        10
    hez2010  
       184 天前
    另起炉灶倒不会,现在 Windows 自己的系统应用正在一个接一个迁移到 WinUI 3 。
    多亏 explorer 也迁移到 WinUI 3 了,微软在这个过程中发现了大量的 bug 然后修掉推出了 WASDK 1.4.x 版本,这个版本的稳定性直接甩了之前的 WASDK 老版本们几条街。只能说自己的东西如果自己都不用的话,那是不可能知道里面有多少问题的。而现在微软自己开始用 WinUI 3 了,而且还是在自家系统的核心应用上,基本也标志着离成熟不远了,大家都可以用起来了。
    ikas
        11
    ikas  
       184 天前
    WinUI 3 没有那么不堪吧,使用 c++ winui3 重构之前使用 sdl2+win32ui 写的 app,效果还是可以的.
    主要问题其实是 c#来写太慢了,这个不是 winui3 的锅,只是到现在也没法原生编译,比使用 c# uwp 原生编译慢太多了
    hez2010
        12
    hez2010  
       184 天前
    @zxCoder 是 C++ 写的 WinRT component ,可以提供给任何语言来使用: https://github.com/microsoft/microsoft-ui-xaml/tree/winui3/release/1.4-stable/controls/dev
    ambition117
        13
    ambition117  
       184 天前
    怎么就烂泥扶不上墙了,win11 一堆组件都用 winui 3 重写了
    daokedao
        14
    daokedao  
       184 天前
    需要 Window 10 以上,以前的系统不支持,还是用不了啊
    Jirajine
        15
    Jirajine  
       184 天前 via Android
    上次听说 winui3 还是刚发布预览的时候,号称 uwp 和普通应用合并之类的,总不能又烂尾了吧。
    blinue
        16
    blinue  
    OP
       184 天前
    @hez2010 #10 资源管理器使用 WinUI 3 后的性能和稳定性有目共睹。目前 Win11 使用 WASDK 的系统应用非常少,似乎只有资源管理器和开发人员主页,其他的都是 UWP 或 XAML Islands 。
    blinue
        17
    blinue  
    OP
       184 天前
    @ambition117 #13 WinUI 3 的开发体验和用户体验都不如人意,列举几点:

    1. 性能差。WinUI 3 应用的启动速度慢,整体性能也不如 UWP ,两年过去了依然没有改善。
    2. bug 多。WinRT API 最初是专门为 UWP 设计的,现在想让 Win32 应用使用它们经常会有水土不服的情况。这方面 WASDK 和 XAML Islands 情况差不多,都有大量的 bug 。有些 bug 涉及系统底层,修复需要很大的代价,比如管理员身份下拖拽会崩溃。WASDK 最让我恼火的还是怎么都修不好的标题栏。
    3. 不响应社区的反馈。WASDK 和 WinUI 仓库的 issue 基本不会得到回复。前一段时间还大量关闭了 WinUI 仓库无人响应的旧 issue 。这很大程度是因为开发资源不足,再结合迟缓的项目进度,显然 WASDK 项目并没有投入多少人力。
    4. 管理混乱。领导层几次更换,项目的方向也随之变化。这也导致了曾经画的饼并没有实现。
    5. 没有可视化界面设计工具,这在现代 UI 框架中是难以想象的。

    总之目前 UWP 和 XAML Islands 仍是更好的技术栈,WASDK 曾经未来可期,这个未来没有来过。
    ambition117
        18
    ambition117  
       184 天前
    @blinue 谢谢回答。

    但是这些技术,之前从来没用到 explorer 上,就算是 wpf 都没有( longhorn 因此翻车推倒重做),说明微软还是很看好它。

    性能也是可以优化的,至少在我的 13 代处理器上没有遇到什么卡顿问题,加载一百万视频的文件夹也没有问题。
    1145148964
        19
    1145148964  
       184 天前
    我好像明白为什么文件管理器整天爆炸了
    PrinceofInj
        20
    PrinceofInj  
       184 天前
    @ambition117 #18 LH 也就是在那时。换成现在的话,微软就跟直接发布出来。毕竟当时 LH 完成度还算行。能用了。KPI 的产物。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3586 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 04:35 · PVG 12:35 · LAX 21:35 · JFK 00:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.