我知道这在“技术上”是这个问题的重复。 Should I recommend sealing classes by default?
但是我再次问它,因为显然这个建议已经改变了 1 与时间虽然我在过去几年中找不到任何关于它的事情,或者事实上越来越多的人由于测试的改进(这是主要原因之一),处理器速度(速度差异现在可以忽略不计)等,现在推荐AGAINST密封类等。
我正在尝试找出最新的天气指南,将classes
标记为sealed
。
1 Essential C# 6.0 (5th Edition),Mark Michaelis(合着作者Eric Lippert):
“一般来说,将课程标记为密封很少进行,应予以保留 仅适用于有充分理由支持的情况 这样的限制。事实上,离开类型开封越来越受欢迎, 由于需要支持模拟,因此单元测试变得突出 (测试双重)对象创建代替实际实现。“
这是硬拷贝证明,因为其他人都是口口相传。