注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Flex 技术博客

醉里挑灯看剑,梦回吹角连营

 
 
 

日志

 
 

Cairngorm框架入门介绍  

2007-10-11 14:56:33|  分类: Cairngorm |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 

Cairngorm是Iteration::two的开源项目, 现在已经被Adobe收购,是使用Flex的RIA开发的最佳实践(best-practice)框架.详情可以访问Adobe的lab (http://labs.adobe.com/wiki/index.php/Cairngorm)。 

在Cairngorm基础上开发RIA, 将会在大大提高开发和维护的效率。.

Cairngorm本身并不是一个完整的企业应用, 它只是提供了一个开发的骨架, Adobe称之为体系.在这个体系中包括以下几个部分:

1. Business(业务逻辑部分)

2. Command(命令部分)

3. Control(控制部分)

4. Model(数据模型)

5. View(界面视图)

6. VO(ValueObject) 

Cairngorm框架最新版本是2.1,是面向Flex 2.0的,如果你用的事Flex 1.5那么你应该使用Cairngorm 1.5。你可以到这个网站下载到框架源码、例子贺文档http://www.cairngormdocs.org/ 

在这里我们将对Cairngorm框架中的各个部分进行一个简单的介绍。 

  • 先来看一下Control部分

Control中有3个基类:CairngormEvent, CairngormEventDispatcher和FrontController

CairngormEvent继承与flash.event.Event, 他包含一个data成员,用来传递参数数据之用。

CairngormEventDispatcher是一个单例类(singleton),用来广播用户发起的动作类事件(CairngormEvent),主要的调用方法是CairngormEventDispatcher.getInstance().dispatchEvent().

FrontControllers可以说是控制中心。在这里你要做的工作是将事件(CairngormEvent)和命令(Command)之间的映射关系注册在它的成员中( 该成员类型是Dictionary),通过下面的类似方法进行注册。addCommand(OrderRequestEvent.EVENT_GETUSERORDERREQUESTS, GetUserOrderRequests);

如此一来,凡是CairgormEventDispatcher广播出来的事件都会在这里进行查找,找到某个event对应的command,然后会执行command的execute()方法。

FrontController必须要在你的系统中实例化,具体的实例化方法如下:

<mx:Application xmlns:control="com.domain.project.control.LoginController" ... >

         <control:LoginController id="controller" /> 

</mx:Application> 

  • 我们再来看Command部分

在Command中定义了ICommand接口,在2.0中叫Command,其实没有区别,只不过是名字上的修改更能体现接口的意思罢了。在ICommand接口中定义了一个唯一需要实现的方法execute(),这其实就是典型的命令模式,我们要做的就是实现此接口,并不需要关心命令模式的具体实现方式。

(待续)...

  评论这张
 
阅读(1147)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017