微软近日发布了一篇博客,以对话形式与 .NET 工程师探讨了一下有关 .NET 项目的开源经验和心得。其中指出,.NET 软件开发平台采用率的提升主要归功于开源。
根据介绍,微软在 2015 年将其 CoreCLR .NET 执行引擎作为开源发布,并在 2016 年推出了 .NET Core 开源运行时。随着 2020 年 .NET 5 的发布,该公司将 .NET 平台的开发从有 20 年历史的 .NET 框架迁移到开源的 .NET Core。
.NET 团队 PM、.NET 基金会执行董事 Claire Novotny 称,.NET 采用率的提升毫无疑问是归功于开源的。在开源之前,.NET 仅限于 Windows;开源之后,它就可以运行在更多的平台。
.NET Libraries team 的小组经理 Dan Moseley 补充称,开源使 .NET 更容易跨平台,因为该公司能够与 Linux 社区进行合作。开发人员还可以访问 .NET 的源文件,使平台易于信任。.NET 团队项目经理 Immo Landswerth 则表示,OSS 肯定是他们能够构建 .NET 的关键因素。
在开源对 .NET 项目的重要性方面,Claire 指出,开源使任何人都可以查看、调试和贡献他们用于构建应用程序的运行时。他们可以解决对他们来说很重要但可能不会被优先考虑的痛点。且开源有助于确保 .NET 项目在单一供应商 Microsoft 之外可用。
ASP.NET Core、Entity Framework 和 Winforms 的工程经理 Kevin Pilch 则认为,开源对 .NET 很重要。现如今,语言和运行时实现开源已经越来越普遍,如果微软不遵循这种模式,就会十分引人注目。同时,开源还开辟了涉及个人和其他公司的有趣合作。
不过,鉴于微软长久以来主要是提供闭源产品,因此想要让微软的长期客户采用开源也存在一定的挑战。Dan 就指出,许多 .NET 客户历来是采用微软提供的库(历来是闭源的)和他们自己的代码组成他们的应用程序,而不太愿意依赖非微软的库(通常是开源的)。微软希望让客户更容易信任不是来自 .NET 团队的库。
更多详情可查看官方博客。