0

我一直在研究复合 WPF 应用程序,并且刚刚阅读了一些关于将代码分区为程序集的良好指南。文章的作者支持尽可能减少程序集的数量。

您如何平衡使您的 Composite WPF 应用程序合理地模块化,同时最大限度地减少程序集的数量?

对于我当前的项目,我首先为每个逻辑功能组创建一个模块,这导致了相当多 (14) 个小型程序集。如果我要重构它并尝试最小化程序集,我可以将它降低到 6,同时仍然与 Composite WPF 架构保持一致,但我想知道我是否失去了一些灵活性......也许我应该记住YAGNI

4

2 回答 2

1

除了 YAGNI,还要记住关注点分离延迟加载模式,并使用它们为您带来好处。使用更少的程序集捆绑更多属于应用程序不同方面的潜在不需要的功能是没有用的。还要记住,维护保持低耦合的代码也容易得多,因为您可能会通过捆绑不属于一起的相同程序集功能来冒引发错误的风险。

您可能希望在应用程序的典型使用场景中进行一些可用性测试,并查看哪些模块经常需要一起使用、相互依赖或相互继承并将它们捆绑在同一个程序集中。具有不相交功能的模块 - 做出选择会导致加载一个另一个,但绝不应该同时加载两者,尤其应将其保存在单独的程序集中。

于 2009-12-08T19:45:19.577 回答
0

继续将您的代码分成尽可能多的程序集,以使其易于理解和维护。稍后,如果您在应用程序中发现性能问题,并且这些问题是由于程序集数量过多,您可以开始考虑加入其中的一些问题。只需确保具有清晰的对象模型设计和命名空间结构,这样无论您使用多少程序集,您都不会丢失对代码的跟踪。

于 2009-12-08T19:44:21.503 回答