CairngormCairngorm是由adobe公司推出的一个轻量级的Flex RIA程序开发框架。中文名:“烟水晶” 。目的是提高程序的可扩展性、可维护性,其本身并不是一个完整的企业应用,它只是提供了一个开发骨架,Adobe称之为体系。Cairngorm主要就是对开发Flex应用程序应用了一系列的设计模式,从而使开发出来Flex程序可扩展性,可维护性都大大提高。代价就是异常繁琐的文件书写。往往为了完成一个简单的功能需要修改n个文件。所以小项目不建议使用。
Cairngorm也意识到到这个问题,因此也升级为Cairngorm3.0。这次cairngorm的升级,改动非常大,比flex3升级到flex4的改动大的多。不仅仅是个mvc框架了,应该算是一个工具包,提供了很多个swc,通过parsley这个ioc框架纳入了很多种的工具包,总得来讲,cairngorm3已经跟java的spring框架类似了。
需要下载的朋友们要注意,Cairngorm3.0并不是一个swc文件,也没有打好的zip包。需要安装svn的客户端,通过它checkout。(扩展阅读中附有下载地址)
主要控件及工作流程1.Front Controller Listens for User Gestures 前端的控件监听用户的行为。注意它只是监听,并不会做任何反应。
2.Commands Do All the Work 控件监听以后调用Commands来做相应的事情,Command做了所有工作。
3.Delegate Server-Side Business Logic to Business Delegates 把服务器端的业务逻辑委托到 Bussiness Delegates中。因为很多时候command需要获得服务器端数据,所以这样一来它可以直接调用Bussiness Delegates而不用关注如何连接数据的细节,实现了信息隐藏。
4.Business Delegate Finds Services with the Service Locator Command调用Business Delegate 后,Business Delegate 通过Service Locator来找到相应的RPC services,然后执行实现从服务器端取数据。
5.Transfer Data as Value Objects 把传输过来的数据存储为Value Objects。这点大家应该都很熟悉,比如想要查询一个公告,就必定创建一个公告类,来存储每一个公告的标题等信息。
6.Store State in the Model Locator and Let Model Notify View 在Model Locator 保存状态并且能使Model检测到View的变化。
核心骨架(体系)1. Business(业务逻辑部分)
2. Command(命令部分)
3. Control(控制部分)
4. Model(数据模型)
5. View(界面视图)
6. VO(ValueObject)