打开网易新闻 查看精彩图片

近日,微软澄清说,在开始测试一个名为 Microsoft.UI.Reactor 的实验性框架后,它并没有要放弃 WinUI 和 XAML。考虑到微软之前放弃 UWP 和关闭 Silverlight 的记录,部分开发者心存疑虑也不足为奇。

对那些不太了解(或者不是开发者的人)来说,WinUI 是微软的原生 UI 框架。用它建立的应用一般遵循 Windows 11 的设计风格,比如设置应用。另一方面,XAML 是开发者用来描述应用界面的标记语言。

Reactor 建立在 WinUI 基础上,提供了一种新的方式,可以直接用 C# 描述这些原生界面,而无需写 XAML。因此很明显,Reactor 并不是要取代 WinUI,但它确实让人怀疑,这会不会是多年来被忽视的 XAML 的最后一根稻草。

我问过微软,他们把我引导到新的文档以及开源资料。

“WinUI 是基础。XAML 是使用它的一种一流方式,它不会被弃用,并且仍在积极投入中”,微软的亚历山大 · 佐林格 · 乔菲(Alexandre Zollinger Chohfi)在 10 月 21 日的开发者博客中写道。

微软不得不明确说明这一点还挺有意思,不过这是正确的做法。

在 Silverlight 和 UWP 之后,开发者有理由保持谨慎

我近十年来一直在密切关注 Windows 开发,而微软有终止产品的历史。如果看投入的努力,它和谷歌一样糟糕,甚至更糟。

微软在 2021 年 10 月 12 日终止了对 Silverlight 的支持。UWP 表面上仍然支持,但微软自己不再用 UWP 构建新应用,其文档也说 UWP “不再处于积极开发中”,所以称其实际上已死是合理的。事实上,整个 Windows 的 “一应用搞定一切” 的愿景现在也已经彻底死掉。

打开网易新闻 查看精彩图片

WhatsApp 用 WebView2 版本取代了原生的 UWP 应用。在我们早前测试网页版的时候,滚动聊天时内存使用量从大约 600 MB 增加到 1.2 GB。播放速度加快了 2.5 倍。

微软则建议开发者在新应用中使用 Windows App SDK 和 WinUI。

我见过微软吞吞咽咽地处理、咬咬嚼嚼、狼吞虎咽地结束(也就是杀掉)像 Project Astoria(安卓到 Windows)、Windows Subsystem for Android,还有它的 iOS 桥接项目这些大肆宣传的项目。而我甚至都不想提 Windows Phone。

您可以说 Silverlight 或 UWP 的用途与 WinUI 不同,但无法否认的是,这也解释了,为什么微软每次发布新框架时,开发者都会感到紧张。

作为消费者,后来又成为开发者,我看着微软每隔几年就改一次战略,真是一路惊险。没有什么充分理由让我们相信,今天的微软会与几年前不同。事实上,新的公司范围的重组来削减成本并加大 AI 投资,很可能又会让 Windows 被放到次要位置,破坏它目前的复兴努力。

微软表示会坚持 WinUI 开发框架

我们今年早些时候,我们也听到过类似的承诺,至少是针对 WinUI。在 2026 年 Build 开发者大会上,微软的克里斯 · 安德森(Chris Anderson)表示,“公司没有打算构建新的框架”。

它甚至开始直接称 WinUI 3 为 “WinUI”,这样开发者就不会以为 WinUI 4 即将到来,从而觉得等一等会更好。

打开网易新闻 查看精彩图片

这个想法是要证明 “连续性”,我觉得,它有点像 Microsoft 365。您不会每年都等 Microsoft 365 的第二版,因为您知道它一直在更新,也不需要等到一个重要的里程碑才开始使用它。

微软在 Windows 10 上也尝试过类似的想法,当时他们说,Windows 10 将是最后一个 Windows 版本,但最终他们改变了主意。我觉得这对 OEM 厂商来说也有问题,因为作为一种服务,Windows 系统本身让用户购买新硬件的理由少了很多,只要现有的电脑还能获得新功能。

Reactor 改变了您编写 WinUI 应用的方式

那么,为什么 Reactor 这么重要呢?不是微软发布的每个东西都会有负面结果,我觉得,Reactor 可能会是少数的好东西之一。如果它成功,Windows 实际上可能会拥有更多原生应用,我们或许可以对基于 WebView 的网页应用说最后的再见了。

打开网易新闻 查看精彩图片

这正是一些开发者可能一直在寻找的。我说的不是只做 Windows 的开发者,而是那些使用 SwiftUI、React 或 Jetpack Compose 的开发者。如果您熟悉这些框架中的一个,您会发现,典型的 WinUI 项目仍然需要学习 XAML。依我看,这种使用熟悉风格的新思路可能会是个游戏规则的改变者。

现在,如果您是开发者,而且习惯使用 XAML 来开发 WinUP 应用,您可能已经注意到,管理状态和界面标记的代码往往分布在好几个文件中,有时情况甚至更糟。但 Reactor 解决了这个问题,它允许开发者同时描述界面外观和组件状态。相比 XAML,这能减少源代码文件的数量。

同样值得注意的是,如果开发者开始使用 Reactor(C#)来进行标记并放弃 XAML,他们依然会使用真正的 WinUI 控件,包括文本框、导航视图以及其他控件。

微软已经保证,Reactor 不会引入独立的渲染器或基于浏览器的界面,这就是为什么 WinUI 依然安全,并且是整个实验的基础。

打开网易新闻 查看精彩图片

“Reactor 不是一个新的 UI 平台。它是一种描述 WinUI 内容的新方式”,微软在该项目的技术文档中指出。

还有一位开发者也很喜欢它,并表示,“我的反应是 ‘哦,终于来了’。我希望它能流行起来,帮助原生 Windows 开发对来自其他技术栈的开发者更友好。您能想象一个没有 Electron 臃肿网页软件的世界吗。”

您平常使用 WinUI 开发应用吗?您觉得 WinUI 的前景如何呢?

另外值得一提的是,如果您是一位高效能人士,拓扑梅尔智慧办公平台最近也更新到了最新的 6.0 版本,带来了诸如文件管理,个人工作台,文件秒搜,远程协助,音视频通话等功能,可以帮助您进一步提升日常工作效率。