首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.NET中的DLL混乱,如何将一个解决方案拆分为多个DLL?

.NET中的DLL混乱,如何将一个解决方案拆分为多个DLL?
EN

Stack Overflow用户
提问于 2009-04-27 15:27:13
回答 4查看 722关注 0票数 1

我有一个包含5-6个项目的大型VS.NET项目,其中一个项目是核心动态链接库。

现在,为了添加一些插件支持,我提取了一个接口,但是接口需要使用其他类,而Core.dll需要接口,所以我不得不将它们分开。(我不能互相指代)

在这之后,我的一天被毁了,因为即使花了大约4个小时,我也无法把它们分开!最后,我创建了类似于20+项目,但它仍然不工作(实际上甚至不关闭)。看起来,我最终会有50个项目,需要修改大量代码才能得到正确的结果。

我意识到,我的代码是高度耦合的,并被回咬。

我做得对吗?现在,我是否必须支付我的会费,并且因为我的高度耦合的代码而受苦?还是我漏掉了什么?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2009-04-27 15:32:17

如果您使用接口,您应该能够将您的接口从核心DLL中提取出来,并为该原始接口上的任何需求提供接口,而不会带来太大的痛苦。

如果通过界面具有高度耦合的依赖关系,则可能需要重构一点。尝试从主接口的依赖项中提取接口或基类(这很容易进入新项目)。这应该有助于防止循环依赖问题--听起来像是您现在遇到的问题。

不过,总的来说,我要说的是,在你做这件事之前,先退一步,考虑一下你的项目。项目布局应该更多地基于功能而不是退步--如果您按照类干净地进行分组,那么大多数依赖问题都倾向于自我清理。为了获得最干净的布局,在尝试提取之前,我会仔细研究一下重构。

票数 3
EN

Stack Overflow用户

发布于 2009-04-27 15:32:09

重构,重构,重构。你得付你的会费,但我认为这是值得的。你会学到很多。

票数 3
EN

Stack Overflow用户

发布于 2009-04-27 15:38:34

你考虑过使用MEF吗?

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/794038

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档