.NET中分离项目/ DLL的缺点和优点?其中有多少太多了?

dr.*_*vil 9 .net dll projects-and-solutions

这个问题涉及到其他一些相关的问题,我只想让他们每一个都随意回答其中一个或多个问题.

  • 分离Projects/DLL有什么好处?
  • 分离Projects/DLL有什么缺点?
  • 如果我为每个可共享资源创建一个新的解决方案/ DLL,是不是会有很多项目?
  • 经过太多项目(如40+)后,这会对IDE性能造成一些不良影响(VS.NET 2008)?

我问这个问题是因为我有这么多不同类的这个大解决方案,因为现在我需要分离一些接口,它们都崩溃了(循环依赖问题)现在我需要创建多个DLL,我只是想一定要这次以正确的方式做到这一点.

Hog*_*eed 6

这个问题的答案可能很长,关于论证的范围,我认为首先可以更好地集中选择什么是必要的,以分离多个集合中的项目,并且通常这可能是一般来说,设计和分层和/或清理项目结构.

1.分离Solutions/DLL有什么好处?

一般来说,分离解决方案和组件的优势与设计方法,代码重用和层组织有关,如上所述,分离解决方案有助于共享对象/组件并在层之间分配责任,促进多目标和可插拔解决方案(请参阅例如各种存储目标程序集(数据库,文件等)),可测试性

2.分离Solutions/DLL有哪些缺点?

正如其他人在我之前所说的那样,主要的缺点首先是复杂性(管理,维护),然后是性能(但这是另一个讨论,说起来并不容易)

3.如果我为每个可共享资源创建一个新的解决方案/ DLL将不会有很多解决方案?

这取决于,首先我认为这可能取决于设计选择

4.经过太多解决方案(如40+)后,这会对IDE性能造成一些不良影响(VS.NET 2008)?

我不太确定VS2008 IDE中的性能下降,但确定它可能会影响性能来管理60多个项目的单个解决方案而不是4个解决方案,每个解决方案有20个项目.必须清楚VS IDE性能可能会降低即使在单个或双重项目解决方案中一起打开35个文件之后...

最后,我认为让我想到的最重要的事情就是"构建"它真正需要的东西比过度设计更好,所以当事情变得太复杂而无法管理(对许多项目来说)时,它会更好停下来想想"一切进展顺利吗?"