【问题标题】:Minimizing the number of DLLs while keeping Composite WPF modular在保持 Composite WPF 模块化的同时最小化 DLL 的数量
【发布时间】:2009-12-08 19:26:54
【问题描述】:

我一直在研究复合 WPF 应用程序,刚刚阅读了 some good guidelines 关于将代码分区为程序集的内容。文章作者支持尽可能减少程序集的数量。

您如何平衡使您的 Composite WPF 应用程序合理模块化与最小化程序集的数量?

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

【问题讨论】:

    标签: wpf modularity prism


    【解决方案1】:

    除了 YAGNI,还要记住 Separation of concernsLazy loading 模式,并使用它们为您带来好处。使用更少的程序集捆绑更多属于应用程序不同方面的潜在不需要的功能是没有用的。另请记住,维护保持低耦合的代码也容易得多,因为您可能会因为捆绑不属于一起的相同程序集功能而引发错误。

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

    【讨论】:

      【解决方案2】:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2022-07-20
        • 1970-01-01
        • 2021-05-04
        • 1970-01-01
        • 2019-04-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多