Bootstrapper类的责任是使用Prism类库初始化应用程序,抽象类Bootstrapper提供的函数大多都是虚方法。
DI
UnityBootstrapper和MefBootstrapper类实现了大多数必须的功能。
Shell
在Prism应用中,创建Shell或者主窗口的责任是Bootstrapper的。因为Shell依赖的一些服务比如Region Manager需要在Shell显示之前初始化。
关键抉择
是否使用Unity、MEF或者其它的dependency injection container,这决定Bootstrapper类创建;
应用使用那些服务,这些服务需要注册到container中;
决定创建日志服务是否需要,或者是否需要其它日志服务;
决定哪些模块是希望应用发现的,通过显示代码声明、文件夹扫描、配置文件还是XAML方式配置;
核心步骤
创建Bootstrapper
实现CreateShell方法
返回你应用程序Shell类的实例,可以根据需求选择创建Shell对象或者从Container中获取Shell。
关键词: bootstrapper 责任 创建 Shell