数据模型是否定义了 Prism 应用程序中模块之间的逻辑划分?
Do data models define the logical split between modules in a Prism application?
有了 MVVM 的一些背景知识,我现在要转向 Prism 进行大规模应用。我已经阅读并且——大部分——理解了优秀的 Developer’s Guide to Prism。
令我困惑的是:在逻辑上我应该在哪里将我的应用程序分成不同的模型?似乎不同的数据源(或模型)决定了这一点,但我还没有找到可靠的说法。
在我的例子中,我只有一个数据源:一个包含大量条目但在单个 table 中的数据库,转换为单个对象类型。然而,我想要数据的各种完全不同的视觉表示,这取决于用户想要用它做什么。这些表示更好地实现为不同的模块还是同一模块中的不同视图?我的感觉是后者,因为我看不出如何在各种模块上使用相同的数据模型以 MVVM 方式实现,但我希望看到那里的专家确认它。
这道题和Where does the data model go in a Prism app?有些相似,但不完全一样...
Are these representations better implemented as different modules or as different views within the same module?
只有您作为开发人员或架构师可以决定这一点。但我也会说后者,即同一模块内的不同视图。
一个Prism
模块只不过是一个"loosely coupled functional unit"。这与相同(或几乎相同)数据的不同视觉表示不同。
甚至可以实现单个视图来显示相同基础数据的多个不同视觉表示,因此您当然不需要多个模块就可以做到这一点。所以你应该从一个模块开始。如果出于某种原因需要,您以后可以随时添加其他模块。
有了 MVVM 的一些背景知识,我现在要转向 Prism 进行大规模应用。我已经阅读并且——大部分——理解了优秀的 Developer’s Guide to Prism。
令我困惑的是:在逻辑上我应该在哪里将我的应用程序分成不同的模型?似乎不同的数据源(或模型)决定了这一点,但我还没有找到可靠的说法。
在我的例子中,我只有一个数据源:一个包含大量条目但在单个 table 中的数据库,转换为单个对象类型。然而,我想要数据的各种完全不同的视觉表示,这取决于用户想要用它做什么。这些表示更好地实现为不同的模块还是同一模块中的不同视图?我的感觉是后者,因为我看不出如何在各种模块上使用相同的数据模型以 MVVM 方式实现,但我希望看到那里的专家确认它。
这道题和Where does the data model go in a Prism app?有些相似,但不完全一样...
Are these representations better implemented as different modules or as different views within the same module?
只有您作为开发人员或架构师可以决定这一点。但我也会说后者,即同一模块内的不同视图。
一个Prism
模块只不过是一个"loosely coupled functional unit"。这与相同(或几乎相同)数据的不同视觉表示不同。
甚至可以实现单个视图来显示相同基础数据的多个不同视觉表示,因此您当然不需要多个模块就可以做到这一点。所以你应该从一个模块开始。如果出于某种原因需要,您以后可以随时添加其他模块。