C# Visual Studio中的参考资料是什么?

C# Visual Studio中的参考资料是什么?,c#,visual-studio,C#,Visual Studio,我知道这会带来额外的库,这些库是由微软预先编译的,但是,举例来说,仅仅在阳光下添加每个库是否有缺点?我还可以看到,默认情况下,会将最常用的库添加到任何项目中 在编译我的应用程序时,它实际上对输出二进制文件有什么作用吗?因为我的印象是这些库中的大多数都是.NET framework的一部分 那么,除了自定义库之外,还有什么意义呢?没有什么可以阻止您这样做。编译器将陷入困境,因为必须从所有这些程序集的元数据加载所有声明,但在速度较慢的磁盘上,这不应超过几秒钟。非常确定的是,标识符查找是按O(1)摊销

我知道这会带来额外的库,这些库是由微软预先编译的,但是,举例来说,仅仅在阳光下添加每个库是否有缺点?我还可以看到,默认情况下,会将最常用的库添加到任何项目中

在编译我的应用程序时,它实际上对输出二进制文件有什么作用吗?因为我的印象是这些库中的大多数都是.NET framework的一部分


那么,除了自定义库之外,还有什么意义呢?

没有什么可以阻止您这样做。编译器将陷入困境,因为必须从所有这些程序集的元数据加载所有声明,但在速度较慢的磁盘上,这不应超过几秒钟。非常确定的是,标识符查找是按O(1)摊销的,因此它不应该明显地降低实际编译的速度。.NET framework中的命名空间名称是经过仔细挑选的,以避免发生冲突。输出程序集将只有代码中实际使用的引用的列表


反对它的唯一理由是,它并不优雅。你的队友会在你背后窃窃私语。无论谁被选中来维护你的项目,总有一天他一看到你的项目就会开始寻找另一份工作。对于程序员来说,被认为邋遢是最糟糕的一种标签,这是一个很难让人铭记的名声。

你的应用程序会变得很大吗?我的想法是,如果库都包含在运行时中,为什么要将它们包含在输出二进制文件中?您的权利是您的输出二进制文件不会很大。你的项目会变得非常庞大,甚至可能需要很长时间来编译,需要检查这么多的参考资料?看,到目前为止,我一直在删除所有我能删除的参考资料,只是因为我认为它在菜单中看起来更整洁,但它让我想…我真的在妨碍自己吗,它会从Intellisense或类似的东西中删除某些东西吗?对于大多数项目,我似乎只需要系统参考就可以脱身……好吧,也不要通过微观管理让自己筋疲力尽。项目模板预先选择公共引用,如果不修剪这些引用,没有人会反对您。您不会通过删除一个未使用的引用来“妨碍”自己,除非您在以后进行更改时可能不得不将其添加回去。