微软开源 Rust/WinRT,方便使用 Rust 构建 Windows 应用

2020/5/4 18:28:55 来源:开源中国 作者:xplanet 责编:马卡

微软推出了基于 Rust 的 Windows 运行时项目 Rust/WinRT。该项目和 C++/WinRT 一脉相承,用标准语言和编译器为 Windows 运行时构建语言投影,从而方便 Rust 开发人员调用 Windows API,更轻松地使用 Rust 构建各类 Windows 应用和组件。

Windows 运行时基于内部的组件对象模型(Component Object Model,COM)API,需要通过诸如 C++/WinRT 和 Rust/WinRT 之类的语言投影进行访问。这些语言投影采用描述各种 API 的元数据,并为目标编程语言提供自然的绑定。这使开发人员可以使用所需的语言为 Windows 轻松构建应用程序和组件。

Rust/WinRT 由来自 Windows 团队的工程师 Kenny Kerr 于去年十一月提出,并开始进行尝试。他在当时的博客文章中表示,Windows 运行时已开始增加对各种语言的支持,但这些都无法脱离 C++,直到 Rust 的出现。

Kerr 认为,即便 Rust 的学习曲线可能令人望而却步,但它很有可能解决 C++ 与 WinRT 的关系中一些最棘手的问题。“想象一下不需要 IDL 的 C++/WinRT:更快的构建时间,以及简单而集成的构建系统。”

根据微软的介绍,Rust/WinRT 能够将任意时间段内的 WinRT API 直接调用进 Rust 包,开发者可以像调用 Rust 模块一样调用它们。

Rust 与 C++ 在编译和运行时模型等许多方面都非常类似,但 Rust 在安全性上更胜一筹,这也是微软一直强调和看重的地方。

官方的介绍文章中还给出了一些关于 Rust/WinRT 的有趣示例,例如这个从 C++/WinRT 快速移植到 Rust/WinRT 的扫雷游戏 demo:

目前 Rust/WinRT 还处于早期预览状态,微软希望它接下来与现有 Win32 和 COM API 提供更加无缝的互操作,包括对 com-rs crate 的支持。

详情可见微软官方博客:https://blogs.windows.com/windowsdeveloper/2020/04/30/rust-winrt-public-preview/

相关文章

关键词:开源微软

软媒旗下网站: IT之家 辣品 - 超值导购,优惠券 最会买 - 返利返现优惠券 6655网址之家 Win10之家 Win8之家 Win7之家 Vista之家

软媒旗下软件: 魔方 旗鱼浏览器(极速内核) 云日历 酷点桌面 闪游浏览器(IE内核) Win7优化大师 Win8优化大师 Win10优化大师 软媒手机APP应用