
深入探察相等操作符
重写相等操作符是非常容易出错的。不仅因为相等操作符有许多内涵,而且目前有很多指导文档都有瑕疵,甚至在MSDN网站上有些指导文档也有瑕疵。我们将分别对支持相等操作的引用类型和值类型给出系统的分析,来澄清事实。

重写相等操作符是非常容易出错的。不仅因为相等操作符有许多内涵,而且目前有很多指导文档都有瑕疵,甚至在MSDN网站上有些指导文档也有瑕疵。我们将分别对支持相等操作的引用类型和值类型给出系统的分析,来澄清事实。

最近,InfoQ对出版了《Model Based Software Testing and Analysis with C#》“使用C#进行基于模型的软件测试和分析”一书的四位作者Jonathan Jacky, Margus Veanes, Colin Campbell和Wolfram Schulte进行了采访,他们就基于模型的测试发表了个人观点。同时还要感谢剑桥大学出版社与我们分享了本书的样章摘录。

作为一个很典型的设计模式,Singleton模式常常被用来展示设计模式的技巧,并且随着技术的演进,.NET语言和Java都已经对Singleton模式作了完善,例如C#可以通过本文提供的一个非常精简但又很完美的方式实现了进程内部线程安全的Singleton模式。
很多人想知道微软为何重视C#而轻视VB.NET,为何VB.NET开发者和C#开发者同工不同酬,VB.NET开发者的未来在哪里。.NET管理语言组的项目经理Lisa Feigenbaum在播客上向VB.NET社区保证——VB的未来依旧是光明灿烂的。
最近,Gavin Grover将其开发的Groovy-DLR 1.0的beta 04版源码上传到了codeflex站点,该版本对以前的版本作出了一些改进,包括就地(in-place)注释lex定义。不过他似乎准备放弃继续发展这一项目,转而研究增加Groovy的其他特性。
在.NET中针对已有的存储过程创建封装函数是相当困难的一件事。存储过程有特定的调用约定,这些约定在.NET Framework中并不常用,当中的很多也根本得不到支持。例如,C#不支持可选参数,.NET语言不支持可为空类型的可选参数。
对那些专注于C#和VB风格语言的开发者来说,模式匹配是个陌生的概念,其实事情本不该这样。然而模式匹配仅仅成为对case语句的一种完善,而case语句又成为对if-else-if块的完善。本文将带领大家一窥这种转变过程以及如何将F#的模式匹配应用到VB和C#上。
Mads Torgersen给大家展示了C#中dynamic关键字的更多详细信息,以及这个关键字的由来。并谈及在选用dynamic关键字之前,一些最终被废弃的替代设计方案。