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

Vac*_*ano 1 .net visual-studio visual-studio-2012

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

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

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

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

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

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

Ree*_*sey 5

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

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

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

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

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