Welcome

首页 / 软件开发 / .NET编程技术 / Composite Application Guidance for WPF(2)

Composite Application Guidance for WPF(2)2012-02-07 博客园 周银辉Composite Application Library(CAL)

1,一个Composite Application 的基本组成

Composite Application Library(CAL)作为Composite Application Guidance的最重要的组成部分,为我们提供打造Composite Application的最基础的组件和服务。

看看下面这张图

一个Composite Application通常由这些部分组成的(与此同时,CAL相应的为我们提供了这些基础组件)

Shell:应用程序的顶级窗口,其Host了各种不同的UI组件(通常是View),Shell本身并不知道它包含了哪些内容,通常情况下它有这非常有限的功能,而其他绝大多少功能则是由各个Module来提供的

Shell Presenter:Shell的表示层逻辑,和MVP模式中的Presenter的意义相同,这使得Shell易于测试和维护

Region:其相当于一个占位符,用于Host可视化元素(其被放在View中,并通过Region Manager来访问)

Module:由View,数据模型,业务逻辑,服务等组成的一个集合,也就是我们常说的“模块”,其易于被单独开发、测试和部署,通常情况下我们让不同团队成员甚至是不同的团队负责不同的模块,然后这些模块最后再被集成起来成为一个完整的应用。

View:即“视图”,与MVP中的View意义相同。

Service:应用程序或模块暴露一些用于共享的“服务”,这些服务会被一个成为“服务容器”的东西来进行定位和加载(在CAL中其为Unity Container)