在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
近日,.NET开源社区“再起波澜”。起因是微软在即将发布的 .NET 6 中悄悄删除了 Hot Reload(热重载) 的核心部分,此举彻底激怒了.NET开源社区开发者,他们强烈反对微软这种行为,认为微软此举是不利于 .NET 开源社区健康发展。
那么,删除“热重载”功能的意味着什么?据了解,所谓 Hot Reload(热重载)功能,是一个可以允许开发者在应用程序运行时更改源代码,并立即看到效果的关键功能。换句话说,就是在开发人员写代码过程中,获得修改代码的即时反馈,从而帮助软件开发人员提高开发效率。
此前,微软曾高调宣布将在 .NET 6中加入“热重载”功能,但是微软又悄悄地从名为 dotnet watch 的工具中删除 2500 行“热重载”功能的源代码。
10 月 20 日,微软项目经理 Dmitry Lyalin 发布一篇博文表示:“我们决定从即将发布的 .NET 6 GA 开始,现在只通过 Visual Studio 2022 启用热重新加载功能。”
就是这个消息,瞬间引爆了整个 .NET 社区。对于不熟悉开源社区的朋友来说,微软仅仅删除一个“热重载”功能,.NET 社区开发者为什么这么激动呢?
实际上,微软删除.NET 6.0 的热重载功能,将其限制在自家产品 Visual Studio 开发平台上,拒绝开放给其它平台使用,微软此举已经违背了开源社区的“发展初心”。
准确来说,微软此举已经将开源 .NET SDK 故意削弱了,使得微软自家免费的商业产品 Visual Studio 比竞争对手更具吸引力,包括微软赞助的 Visual Studio Code。最重要的是,此次更改微软是在没有与 .NET 社区协商的情况下完成的。
为此,人们联想到之前关于 .NET 基金会的“数次危机”。此前一位卸任的董事会成员就对 .NET 基金会的角色提出了质疑,询问它是否仅代表微软的意愿行事、还是致力于帮助培养和促进一个健康的社区?但 .NET 社区并没有回应。
据了解,微软这次不仅将.NET 6.0 的热重载功能删除,目前 macOS 和 Linux 开发人员那里也删除了该选项,“现在这个功能真的成为了 Windows 和 Visual Studio 开发平台独有的工具了”。
微软道歉:恢复 .NET SDK 热重载功能
由于 .NET 社区强烈谴责微软从 .NET SDK 中删除了热重载(Hot Reload)功能,微软不得不出来道歉,并宣布恢复 .NET 中的热重载功能。
10月23日,微软官方发布博文道歉:“首先,也是最重要的,我们要道歉。我们在执行我们的决定时犯了一个错误,花了比预期更长的时间来回复社区。我们已经批准了重新启用这一代码路径的拉取请求,它将在 .NET 6 SDK 的 GA 构建中出现。”
微软方面解释称,因为于绝大多数 .NET 开发人员都在使用 Visual Studio,他们为了确保 VS 为 .NET 6 提供最佳体验,所以他们选择首先将 Hot Reload 引入 VS 2022。
同时微软强调是无意中删除了这段源代码,而不是不调用该代码路径。在文章的最后,微软再次进行了道歉,并表示:他们的愿望是为 .NET 创造一个开放和充满活力的生态系统。和许多公司一样,他们也正在学习在考虑 OSS 社区的需求和作为 .NET 的企业赞助商之间进行平衡。
即便微软决定恢复 .NET SDK 中热重载(Hot Reload)功能,但是却引起了众多的议论。 有网友认为这是开源理念的一个很好的证明——问题得到了承认,反馈得到了迅速解决。然而有些网友并不认可微软官方说法。他们认为“微软无意中删除了源代码,而不是不调用该代码路径”。这是否意味着代码将在那里,现在仍然无法从命令行使用?还有另外一部分网友认为这篇博文听起来是个好消息,但并没有说明如何恢复热重载(Hot Reload)功能,也没有解释微软是否试图以牺牲其他平台为代价,促进 Visual Studio 成为 .net 生态系统中的“一等公民”等问题。
对此,你怎么看?欢迎和小谷过来讨论一下哦!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
软件工程师前景如何?就业薪资是多少?
软件工程师前景如何?就业薪资是多少?通过有关数据显示,目前国内对软件工程师的需求已经远超20万,并且每年以20%左右的速度快速增长,而高校计算机毕业生中的能够直接打到企业用人标准的软件工程人才还比较缺乏,尤其是高素质的软件工程师的极度短缺。所以软件工程师市场相对比较活跃。
11156
2019-08-08 14:08:28
C语言编程入门怎么学习?C语言和C++的区别
C语言编程入门怎么学习?C语言和C++的区别,C语言是面向过程,而C++是面向对象。很多人学习c语言直接背语法,连各种高深的算法都死记硬背,大学考计算机二级C语言证书,但并不能真正用c语言编写程序处理问题。想入门C语言编程不能死记硬背,要理论结合实际,学以致用。
8178
2019-08-02 16:08:31
好用的MySQL管理工具推荐盘点
众所周知,MySQL作为小型关系型数据库管理系统,目前备受喜爱和青睐,因此在世界范围内的中小型网站中被广泛地应用。它的优点有体积不大、快速且安全,开放源码,更重要的是成本不高,因此从降低网站成本的角度考虑,许多中小型企业会使用MySQL存储数据。因此今天本文讲盘点几款好用的MySQL管理工具,比如PhpMyadmin、Navicat、SQLyog等等,下面一一推荐给大家。
5887
2020-02-06 10:06:46
男生学IT程序员需要学历吗?
男生学IT程序员的学历要求,学历在一定层面上证明一个人的思维逻辑和理解能力,学习能力的体现,学历越高学习的效率会越高,学习IT技术越容易;如果很感兴趣,学历的门槛并不高,现在很多学校开展了少儿编程或零基础学编程,可见男生学IT技术学历并不是必须条件。
5340
2020-03-18 10:37:22
9月份的数据库排名来啦!速来围观
近期,DB-Engines发布了本年度9月份的数据库排名情况,这份榜单分析主要为数据库相关从业人员提供一个技术方向的参考,DB-Engines的数据库排名是根据当前数据库的流行程度进行排名,排名每月更新一次,具体有如下几个维度:
3465
2021-09-10 17:13:09