删除和/或排序使用有什么价值?

我总是运行删除和排序使用 ,因为它似乎是正确的事情。 但是刚才我想知道:为什么我们这样做?

当然,清洁和紧凑的代码总是有好处的。 如果MS花时间将它作为VS中的菜单项,那么必须有一些好处。

任何人都可以回答:为什么这样做? 删除和/或排序使用的编译时或运行时(或其他)的好处是什么?

正如@ craig-w所提到的,编译时性能提升非常小。

编译器工作的方式是,当它遇到一个类型时,它会在当前命名空间中查找,然后按照所显示的顺序开始使用using指令搜索每个命名空间,直到找到它正在查找的类型。

在Jeffrey Richter的书CLR Via C#中有一篇很好的文章( http://www.amazon.com/CLR-via-4th-Developer-Reference/dp/0735667454/ref=sr_1_1?ie=UTF8&qid=1417806042&sr= 8-1&keywords = clr + via + c%23 )

至于为什么MS提供了菜单选项,我想可能有足够的内部开发人员要求它,原因与你提到的相同:更清晰,更简洁的代码。

在编译期间可能会有一些微小的(即微小的/几乎无法测量的)性能提升,因为它不必搜索您实际上不用于非限定类型的命名空间。 我这样做是因为它最简洁,更容易阅读。 此外,我使用Productivity Power Tools并将它们设置为在保存文件时执行删除和排序。