Prism应用开发(三)——基于模块的应用程序开发

本文介绍了Prism框架如何使用模块(Module)进行应用程序的划分,模块可以按业务逻辑或架构层次划分。模块间应保持最小依赖,依赖关系可通过接口或EventAggregator通信。文章详细讲解了定义Module的三种方式:代码、XAML和配置文件,并阐述了模块依赖和OnDemand加载模块的实现步骤。
摘要由CSDN通过智能技术生成

Prism使用模块(Module)的概念来对应用程序进行划分。一个module封装相关的关注点,并且具有单一的职责。module既可以按照应用程序的业务逻辑进行划分,也可以按照应用程序的架构层次进行划分。很多大型应用可能会同时包含两种类型的Module。

下图中,按照应用程序的业务逻辑进行模块划分:


下图中,按照应用程序的架构层次进行模块划分:


下面是设计模块的一些例子:

  • 一个模块可以是包含应用程序特定的业务逻辑的模块。
  • 一个模块可以是包含应用程序基础服务的模块,比如logging, caching, authorization 服务。
  • 一个模块可以是调用其它系统的模块。

总之,模块并不一定只能按照业务逻辑进行划分,它可以是一个很灵活的设计。

两个模块之间应该是最小依赖,如果一个模块依赖另一个模块,应该通过松耦合的方式,使其都依赖于定义在shared library中的接口或者使用EventAggregator的方式进行通信。

一、定义Module

public class MyModule : IModule
{
public void Initialize()
{
// Initialize module
}
}

二、注册Module

可以有三种方式注册Module:代码方式、XAML方式和配置文件方式。

代码方式:

protected override void ConfigureModuleCatalog()
{
Type moduleCType = typeof(ModuleC);
ModuleCatalog.AddModule(
new ModuleInfo()
{
ModuleName = moduleCType.Name,
ModuleType = moduleCType.AssemblyQualifiedName,
});
}
XAML
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值