在我的项目上开发了一系列 POCO,并且刚刚意识到其中一些不需要该using System;
子句。
using <module>;
在我的对象或项目上未使用是否有任何性能或尺寸损失?
我的类会因此变得更大、更慢或臃肿,还是编译器/优化器足够聪明来处理这个问题?
在我的项目上开发了一系列 POCO,并且刚刚意识到其中一些不需要该using System;
子句。
using <module>;
在我的对象或项目上未使用是否有任何性能或尺寸损失?
我的类会因此变得更大、更慢或臃肿,还是编译器/优化器足够聪明来处理这个问题?
所有的“使用系统;” 语句确实允许您在没有完全限定名称的情况下使用该命名空间。它不会以任何方式影响运行时性能。
using
在代码中包含未使用的语句不会影响运行时性能。它们不会出现在任何形式的已编译 DLL 中(它们确实存在于 PDB 中)。
但是,如果您知道它们是无效的,通常认为删除它们是一种很好的方式。拥有未使用的 usings 本质上是在说明您的代码对一组类型和扩展方法的错误依赖。
确定哪些 usings 未被使用是一个繁琐的过程。我发现最好只安装一个类似的工具PowerCommands
并让它完成文件保存工作。
这既不会带来性能提升,也不会带来打击。
我删除了所有未使用的并将所有使用的使用排序为代码样式(整洁)。您可以通过 Visual Studio 上下文菜单执行此操作(我将其绑定到热键)。
如果您不使用参考/程序集或扩展功能,例如使用 System.Linq;默认情况下被添加到 VS2010 项目中.. 如果你不使用它.. 只需删除它.. 没有性能问题
using 指令只是语法糖。
除了边际编译时间差异之外,添加使用引用不会影响性能。
它绝不会影响编译器的输出或编译程序的性能!
作为个人喜好的一部分,它可以被删除。我个人会推荐它,因为它可以使编译更快(编译器要查找的命名空间更少)并且还可以提高智能感知的性能。
它对性能没有影响。您可以自行决定保留或删除它。
但是,请考虑保留它。System
命名空间包含 .NET Framework 中最常用的部分,在文件生命周期的某个时刻,您(或某人)可能最终会需要它。这意味着不可避免地把它放回去,可能是在浪费时间想知道为什么没有系统类存在之后。