续上篇。
架构人员和开发者需要花费一些时间和经理来完全理解和评估Prism。可通过以下四步来评价这个解决方案:
- Fit analysis(适用性分析)。判断本指南是否满足需要。
- Initial evaluation(初步评价)。安装、允许和查看指南。
- In-depth evaluation(深度评价)。 透彻了解本指南。
- Adoption(采用)。消化本指南并应用到实际中。
详述如下:
第一步:了解指南
Prism为设计复杂的 WPF/Silverlight程序而生。下列场景可考虑Prism:
- 你正在构建一个通过集成的用户界面展示从多个来源的信息的复合程序。
- 你正在开发、 测试、和部署相互独立的模块。
- 你的应用将来会添加更多的应用和视图。
- 你需要快速安全的更改应用程序以适应变化的业务需求。
- 你的程序由多个协作的团队进行开发。
- 你的程序要求同时实现WPF/Silverlight,并且你想尽可能多的在这两个平台间共享代码。
如果你的程序不满足以上场景,那么Prism可能不适合你。它也可能不适合你:比如你的应用由几个简单的界面组成,你正在构建一个原型或一个演示程序,或者你的开发人员不熟悉这种思想和实践,并且没有时间来学习它。
要决定Prism是否适合你,你需要理解它作为一种解决方案所针对的问题,下面的章节可以帮你做一个适用性分析:
- Goals and Benefits
- Modularity design concept
- UI Composition design concept
- Intended Audience
这些章节需要花费1-2个小时来了解。
第二步: 初步评价
近观Prism, 你需要了解更多的关于Prism类库的设计来决定复合应用程序架构怎样来适应你的企业解决方案架构。你也需要查看“HelloWorld”简单程序代码。
需了解的内容如下:
- Prism Library (Prism类库)
- 下列模式:
- Separated Presentation (各自展现)
- Dependency Injection(依赖注入)
- Container design concept (容器设计概念)
- 下列技术概念:
- Container and Services (容器和服务)
- Event Aggregator (事件聚合)
- UI Composition(UI构成)
按以下步骤可初步上手:
- 下载和编译Prism Library
- 读完 WPF Hands-on Lab: Getting Started with the Prism Library 或者 Silverlight Hands-on Lab: Getting Started with the Prism Library
以上章节可能需要花费3-4个小时。
第三步: 深度评价
决定采用Prism前需要做一个深度评价。 建议 通过参考快速入门和Stock Trader Reference Implementation (Stock Trader RI) 然后开发一个概念验证程序,以深入了解Prism。你也可以考虑按需求扩展该类库或优化来满足组织需求。
在实现概念验证程序之前,先了解如下内容:
- 技术概念:
- Bootstrapper (启动加载器)
- Module (模块)
- Shell and View (外观和视图)
- Commands (命令)
- Communication (通信)
- Multi-Targeting(多目标)
- 查看 QuickStarts 快速指南
- 熟悉 Stock Trader Reference Implementation 示例
参考以下步骤实现你的验证程序:
- 回顾相关的How-To章节 Development Activities.
- 参考 Stock Trader RI来看怎样实现特点的任务和功能。
此步骤花费的时间取决于你应用程序的规模和性质。
第四步: 采用
Prism一旦采用则目标明确。Prism通过以下途径来达到目标:
- 你可以 "需要" 和"不需要" Prism 类库部分。比如,可以仅使用需要的服务。
- 你可以逐步添加Prism 类库 功能到 已存在的WPF/Silverlight 英语程序中。
- 可构建WPF/Silverlight应用程序,且在两个平台间尽可能多的共享代码。
- Prism是非侵入式的,表现如下:
- 限制了Prism 类库在代码中的痕迹。
- 限制了对自定义 Prism类库属性的依赖。你可以通过继承和组合的方式集成已有的类库和 Prism类库(避免了强制你继承自 Prism 类库中的类)。
采用Prism,需完成如下步骤:
- 了解你将怎样使用类库: 直接采用或自定义以适应你的需求。
- 参考 Key Decisions来决策并且与开发团队中的其他人员进行交流。
- Prism类库培训。开发人员需了解如下内容:
- UI Composition UI构成技术概念
- Module 模块技术概念
- Development Activities 开发过程
- QuickStarts 和Stock Trader RI示例代码
- 培训设计师使用Prism。设计师需了解以下内容: