将代码分隔成dll会导致什么样的开销

时间:2013-01-31 18:44:29

标签: .net visual-studio visual-studio-2012

我有一个包含78个项目的解决方案。

解决方案使用Prism很多,棱镜喜欢单独的dll中的东西。

我当前的迭代让我添加了更多的UI组件。这组特定的UI组件可以与现有集合放在同一个项目中。

我想知道我是否应该这样做,或者我是否应该创建一个新项目(因为它是一组独立的UI控件)。

有人可以告诉我在单独的dll中使用代码有什么缺点吗?

由于缺点,我正在关注用户体验和构建速度。

1 个答案:

答案 0 :(得分:5)

  

有人可以告诉我在单独的dll中使用代码有什么缺点(性能明智)吗?

主要区别在于CLR如何加载程序集。加载额外的组件需要更多的开销。

话虽这么说,程序集将不会在启动时加载(除非它在启动时使用),这意味着应用程序的整体启动时间可能实际上有所改善。

一旦加载并运行所有内容,使用单个程序集或多个程序集之间应该没有性能差异。

我建议关注部署和维护的差异,而不是关注分离项目的性能方面。如果项目作为单独的项目有意义,并将它们分开使您的解决方案更易于维护,我会将它们分开。如果它只是在部署和构建环境中增加复杂性,并且类型将始终一起使用,我会将它们保持在一起。