0

我想知道与只有一个项目的解决方案(具有相同数量的类,例如 200 个类)相比,Visual Studio 如何处理编译一个拆分为子项目的解决方案。哪个编译速度更快(或者它们都相同)?

4

2 回答 2

1

我认为通过编译将 uf 拆分为子项目的解决方案会更快。如果您没有更改其他项目之一,它可以使用未更改子项目的已编译 dll。如果所有类都位于一个项目中,则每次构建时都必须编译整个项目...

但在我看来,比构建速度更重要的是将解决方案拆分为子项目的架构优势。如果您有多个组件可以用作独立程序或另一个解决方案中的库,那么拆分您的项目是完全有意义的。这将是我将解决方案拆分为子项目的方法!编译速度只是一个积极的副作用。

查看此链接以优化构建速度:http: //blogs.microsoft.co.il/blogs/arik/archive/2011/05/17/speed-up-visual-studio-builds.aspx

在将解决方案拆分为多个项目时还有一个优势:编译器能够并行编译——即使这些项目之间存在一些依赖关系。所以总而言之,它会更快,我会说。

于 2013-01-14T10:27:10.680 回答
0

一般很难回答 - 这取决于许多因素,包括 VS 版本。预编译的头文件可能会或可能不会被共享;整体程序优化实际上是整体链接单元优化;链接 DLL 发生在运行时,因此不计入 Visual Studio 构建时间等。

于 2013-01-14T10:24:57.583 回答