.net runtime错误_.NET编程周记第3期-2020年1月19日

整理了2020年1月19日这周阅读的几篇有趣的和.NET开发相关的文章。在这里和大家分享。

0x00 Introducing Nullable Reference Types in C#

41c9eb14ac8b6dd402c68ff4d36a3961.png
  • 如标题所示,本文介绍了在C# 8之后引入的可空引用类型。
  • 在本文的开头,介绍了空引用的起源以及Tony Hoare的“十亿美元的错误”,这是一段有趣的历史背景介绍。
  • 介绍了在处理空引用时存在的问题,以及如何在C#8中解决这些问题的方法,即他们添加了可空引用类型来表达引用可能为空的意图。
Introducing Nullable Reference Types in C# | .NET Blog​devblogs.microsoft.com
468db18c98e00a050cdd5490c1774109.png


0x01 A look at the internals of ‘boxing’ in the CLR

7b4dfb5f3154a6afd1fa00157dd30ba5.png
  • 如果你想知道CLR中的装箱实现,你只需要阅读这篇很有帮助的文章!
  • 本文首先介绍CLR规范中的装箱定义。然后讨论与CLR中的装箱/拆箱相关的il操作码和jit代码。相关操作会直接连接到对应的CLR代码。
  • 在本文的结尾,有一些有用的链接,例如CLR代码中与装箱/拆箱相关的注释,StackOverflow上的相关问题等等。
A look at the internals of ‘boxing’ in the CLR​mattwarren.org
1d35685551c84fcd20bbd67831fe6695.png


0x02 Structuring Unit Tests

804ecf05bdaf7c7d12050717ec6e1b0e.png
  • 本文已有些过时,但是本文的内容仍然非常有启发性。
  • 本文介绍的测试结构在是对每个要被测试的类中都有一个测试类来对应,有趣的是针对每个要被测试的方法也要有一个测试类来对应。你可以在NuGetGallery这个项目的代码库中找到一些示例。
Structuring Unit Tests​haacked.com
8018bd1f508a9bfb06647bdd87694e62.png


0x03 The Book of the Runtime

548f3fb9a169bb8fe105bb1d31d13e75.png
  • 《运行时之书》是一组文档,描述了CLR和BCL中的组件。它们旨在更多地关注CLR的体系结构。
  • 有一些有趣的主题,例如CLR的垃圾回收设计,类型系统等。
https://github.com/dotnet/runtime/blob/master/docs/design/coreclr/botr/README.md​github.com


0x04 Hidden Features of C#?

1659f35617ffdbd54b0e9cea55404294.png
  • 一个来自Stack Overflow被查看了685k次的问题。 原始的问题已经有些过时了。但是有下面的回答包含了很多关于C#的隐藏功能或者是技巧。
  • 可以找到许多C#技巧。
Hidden Features of C#?​stackoverflow.com
aaf48bf21a2fa06e83072cf19584f8e2.png


0x05 Web Scraping with C#

c01ac755bc84a3082365a5436303e9e1.png
  • 这篇文章总结了很多有关使用C#进行网络抓取的文章。
  • 可以在Github上找到一些有用的项目,例如AngleSharp。
Web Scraping with C#​www.dotnetswede.com

欢迎大家关注我的公众号"慕容的游戏编程":chenjd01

291c1f071bd6cd9ab58fc2773560ccb9.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值