常用Flex IOC框架比较分析
2009-10-09 00:00:00 来源:WEB开发网核心提示: 说明:我将ProfileViewer建立自己过去看到的一些较为流行的设计模式基础上,仅仅是一个例子,常用Flex IOC框架比较分析(3),使用这些框架肯定还有其他使用方法,如果你觉得我的方法有任何问题,一些框架支持将事件关联到Action,藉此可以搭建一个Controller层,请一定告诉我,
说明:我将ProfileViewer建立自己过去看到的一些较为流行的设计模式基础上,仅仅是一个例子,使用这些框架肯定还有其他使用方法。如果你觉得我的方法有任何问题,请一定告诉我。我非常乐意根据大家的意见和建议调整改进。
本文所有例子的源代码可从flex-ioc-examples project下载。我建议打开这些源码,对照着阅读本文下面的内容时。
高层架构
开发GUI应用时,通常会用到MVC模式。我们就不在这里深入讨论MVC本身的细节了,如果有需要请参看可参看Model-view-controller。
在此之上,我实现了服务层(见图1)。应用可在这里得到来自后端系统的数据。在本例中,我简化了这个部分的实现。
最后,我使用了Presentation Model模式,应用中每个视图都有对应的模型,模型包含了它的状态和逻辑。正常情况下,视图通过绑定表达式响应模型的状态变化。这样,对视图逻辑做单元测试是没有问题的。有关更多细节,请参看Martin Fowler对Presentation Model模式的说明或Paul Williams的文章。
图片看不清楚?请点击这里查看原图(大图)。
图1. 初期架构
架构改进
为把IOC框架引入ProfileViewer,我需将对象实例及其依赖的管理转移到IOC层(见图2)。一些框架支持将事件关联到Action,藉此可以搭建一个Controller层。我将在适当的地方使用框架提供的这些功能。
更多精彩
赞助商链接