复杂的客户端应用程序包含了很多需要从各种组件构建而来的图形界面,这些界面也许会被独立的团队进行开发,并像一个庞大的谜题一样组合在一起。这样的应用程序具有所谓的“Composite UI”。这样的应用程序由构建块或模块组成,这些模块被独立开发,并且它们能协同工作并能尽可能不能影响的组合成一个应用程序。用于那样目标的一个解决方案或框架,对于构架师和开发人员是很有帮助的。
微软在过去一段时间里,创建了几个这样的解决方案,如 Composite UI Application Block (CAB):
它提供了一些被证明是成功的实践,来创建基于例如 Composite 模式这样的知名设计模式的复杂智能客户端用户界面,在其中,简单的用户界面部件能被组合一起创建一个复杂的解决方案,但同时也允许这些部件能被独立地开发、测试和部署。
另外一个微软的解决方案是 Smart Client Software Factory :
Smart Client Software Factory 提供了一个一系列完整的向导,来辅助构架师和开发人员创建复合智能客户端应用程序。
另外的解决方案有针对 Windows Mobile 平台的 Mobile Client Software Factory ,针对Web 的 Web Client Software Factory 。
PRISM 代表了 PResentation Integration SysteM,它也是一个由微软支持的针对 WPF 的项目,其托管在 CodePlex 上。据一个微软技术产品计划师,Glenn Block 所说,PRISM 将提供如下优点:
- 为 WPF 提供完整的支持
- 动态组合用户界面组件
- 应用程序模块能被独立的团队开发、测试和部署
- 允许逐步采用其中的一些功能
- 提供完整的用户体验
目前,PRISM 包含了一个参考实现,一些可重用的函数库和模式向导”,但是这个计划是开发一个能支撑复合应用程序开发的框架。最新的版本已于 2008 年 4 月 15 日发布了,它还是一个开发中的项目。当前的源代码依赖于 Castle Windsor ,但最终版本可能不能再依赖它。
查看英文原文: PRISM: A WPF Composite UI Framework
评论