我过去几个月一直在使用ReSharper,除了广告之外,如果没有它,我看不到自己编码.因为我喜欢生活在流血的"什么地狱出错"的边缘,所以我决定试试我的运气w /最新的ReSharper 4.5夜间版本.这一切都很好.
但是,我注意到using指令分组格式已经改变,我想知道哪个更接近一般标准:
[旧]
#region Using directives using System.X; using System.Y; using System.Z; using System.A; #region namespace X { ... }
[新]
namespace X { #region Using directives using System.X; using System.Y; using System.Z; using System.A; #region ... }
除了延迟加载引用之外,它是否可以用于任何特殊目的?(正在阅读Scott Hanselman对此的看法@ http://www.hanselman.com/blog/BackToBasicsDoNamespaceUsingDirectivesAffectAssemblyLoading.aspx)
谢谢;
正如斯科特在他的帖子中发现的那样,这两种情况之间没有运行时间差异.因此,它不能成为延迟加载引用的目的.
如果你一直读到斯科特博客中的评论,你也会看到将这个传闻传给斯科特(迈克布朗)的开发人员说,他只听说过这个,而不是自己测试过.
也就是说,如果为命名空间内的类型设置别名,并且在命名空间中定义了另一个具有相同名称的类型,则放置using指令的位置可能会因编译器错误而产生影响.但这当然没有运行时间差异.
最后,我相信MS编码指南会像ReSharper 4.5那样做.但盲目地遵循这条规则是"愚蠢的,因为MS说的是这样",因为
事实证明它没有任何好处.
您的团队(或您的)通常的编码风格可能会有所不同.