在C#6中,我们将(很可能)有nameof操作符,这是ArgumentNullException模式非常有用的运算符:
public void M(T x) {
if (x == null) {
throw new ArgumentNullException("x"); // change "x" to nameof(x)
}
}但是,C#6还没有发布,使用nameof的代码不会被编译器的稳定版本编译。
nameof只是一个例子,在可读性方面的差异非常小。这个问题不仅是关于这个案件,而且也是一般的情况。
是否值得(或在什么时候改进)在代码上表明代码可以在未来版本的语言/编译器中被更改为更好(更可读/更好的性能/任何其他度量)?什么样的信号更适合这个工作(仅仅是一个评论,一个TODO评论,一个项目管理中的问题等等)?
发布于 2015-02-14 20:35:41
小心不确定因素。给定的功能可以发布也可以不发布:可以推迟,也可以简单地删除。此外,迁移到语言和框架的新版本也不是一件容易的事情。例如,在Microsoft的社区中,这有时需要一个新版本的Visual,这可能会给公司带来很大的成本。
如果您仍然希望显示出可能的改进,请考虑一下新版本的语言发布后您将做些什么。你会:
在第一种情况下,TODO注释或票证看起来是合适的,但您也可以考虑什么也不做,因为您无论如何都要浏览整个代码库。
在第二种情况下,为维护人员提供一个简单的注释。
https://softwareengineering.stackexchange.com/questions/273238
复制相似问题