本文和大家重点讨论一下Flex的Cairngorm框架使用,在具体谈及Cairngorm框架之前,我想先谈谈使用框架的必要性,也就是为什么要使用框架。
Flex的Cairngorm框架使用心得
在具体谈及Cairngorm框架之前,我想先谈谈使用框架的必要性,也就是为什么要使用框架。(初学者可以看一下,高手略过)
凡是了解软件工程的人,都知道,软件工程其实不是纯粹的工程学,更是一门复杂的管理学课程。软件,完全由人来编写,写代码就像写文章一样,带有很浓厚的主观色彩,即使是制定各种编程规范,也无济于事。但是这偏偏就是属于工程学,需要黑白分明,要达到预期目标,要按时完成,要方便以后代码重用,如何管理好,就一门学问,这就需要软件工程,需要设计模式,需要框架。不同的语言推崇着不同的框架,但都是大同小异,本质上都是三层架构,Flex里面使用的比较广泛的是Cairngorm框架。
Cairngorm框架组成
Cairngorm框架主要包括以下7个部分:
数据组:ValueObject,Model
控制组:Command,controller,event,Delegate
界面组:View
这么分类,其实就是按照三层架构的思想来分的,下面简单谈谈每个包的作用:
◆ValueObject:顾名思义,就是值对象;它的作用主要有这样几个:
1.包含整个程序中所需传递的数据,比如,界面输入的值,后台获取的值,等等;
2.对界面对象的控制;
举例:我们常常会遇到这样的问题,在一个控件A中项要操作另一个控件B,比较麻烦,论坛上也常有这种问题。其实我们完全可以在valueObject里面声明一个B控件的引用,然后在A中就可以操纵Model中的valueObject对象里面的B控件的引用(因为是按引用传递的),就可以达到控制B的目的。
3.对数组绑定对象的控制,如list,将其绑定在一个数组,通过改变数组就可以改变该List。
4.防止flag变量;
5.可以用在自定义事件中,传递参数;
◆Model:model主要就是利用ValueObject来实现全局变量,(注意:在Flex中是没有全局变量一说的),所以使用Model和单例模式,来实现全局数据的控制。(什么是单例模式?就是一个类,在一个程序中,只存在一个对象。这个概念在java中也有用到)。
以上介绍的是数据组,接着是控制组。
◆Command:command其实就是函数,继承自Command类。
◆Event:event的功能就是给界面调用command提供方便。
◆Controller:真正使command和event发生关系的,还是controller。它其实相当于添加事件监听,触发某某事件,该相应什么command,都在这里面定义。
◆Delegate:对于远程数据的访问,Cairngorm是以用委托类,来获取数据然后传给调用函数。
所以,可以看出,在控制方面,Cairngorm框架很有优势的。
◆接下来就是View了。
Flex的一大好处,就是方便模块化编程,View包里面就是放的是自定义组件,在设计阶段,设计好的各个模块,都可以放置在这个包里面。以备以后代码重用。
分享到:
相关推荐
flex框架之Cairngorm框架,包括Cairngorm框架
Flex Cairngorm框架是Adobe Flex应用程序开发中的一个流行的设计模式,它基于Model-View-Controller(MVC)架构,旨在提高代码的可维护性和可扩展性。Cairngorm框架由SitePen公司开发,最初是为了满足大型企业级Flex...
Flex Cairngorm框架实例详解 Flex,作为Adobe的开源富互联网应用(RIA)开发平台,以其强大的MXML和...此外,理解并掌握Cairngorm框架,可以提高你使用Flex进行企业级应用开发的能力,使代码更易于维护和扩展。
Cairngorm是Flex社区中流行的一种轻量级MVC(Model-View-Controller)框架,它提供了一种结构化的方法来组织和管理Flex项目的代码,从而提高开发效率和代码可维护性。 Cairngorm框架的核心组件包括: 1. **模型...
前台FLex工程(单独工程Cairngorm)使用Cairngorm框架与后台java工程(FLexToJava)进行数据交互。功能点: ...附带:数据库sql在java工程中,测试通过,完整的flex使用框架Cairngorm向java后台数据交互
在Flex中,Cairngorm框架的主要组件包括: 1. **Controller**:控制器负责接收和处理用户事件,通常通过EventDispatcher发送命令。控制器是用户交互与应用逻辑之间的桥梁。 2. **Command**:命令模式是Cairngorm的...
Cairngorm是ActionScript和Flex社区中广泛使用的轻量级MVC(Model-View-Controller)框架,它帮助开发者组织和管理大型Flex应用程序的复杂性。通过使用Flex Cairngorm框架生成器,开发者可以快速地自动生成Cairngorm...
在“flex框架之Cairngorm框架(二)”这个主题中,我们可能深入探讨如何使用Cairngorm与后台进行通信。这通常涉及以下步骤: 1. **创建Command**:首先,为与后台的通信创建一个命令类,例如`...
在Flex中,视图通常由MXML和ActionScript组件构成。Cairngorm提倡使用Command模式来处理视图触发的事件,这样可以将业务逻辑与视图分离。 3. **控制器(Controller)**:控制器是MVC架构的关键,它协调模型和视图...
Cairngorm是一个轻量级的MVC框架,专门用于Adobe Flex应用程序的开发。这个框架的设计目的是为了提高Flex项目的可维护性和可扩展性,通过分离业务逻辑、视图和控制层,使得代码更加模块化。在Cairngorm中,模型...
Flex Cairngorm框架是Adobe Flex开发中的一个轻量级MVC(Model-View-Controller)框架,它旨在帮助开发者组织和管理复杂的Flex应用程序。Cairngorm由Adobe贡献给开源社区,是ActionScript 3.0的一个流行架构选择,...
在Flex框架中,有多种架构模式可供选择,例如AsWing、Cairngorm、PureMVC和SpringAS等。本文主要聚焦于Cairngorm和SpringAS这两种架构模式及其在Flex项目中的集成。 #### Cairngorm架构框架 Cairngorm是Adobe官方...
在Cairngorm框架中,服务通常是通过BlazeDS或其他类似的远程通信技术实现的。 #### 二、Cairngorm框架配置详解 ##### 2.1 开发环境搭建 为了开发基于Cairngorm框架的应用,我们需要准备以下开发工具: - **JDK及...
Flex Cairngorm 框架是一个面向Flex开发者的重要工具,尤其对于那些致力于构建大型、可扩展的MVC(Model-View-Controller)架构的应用程序。这个框架为ActionScript 3.0开发提供了强大的设计模式支持,使代码组织...
Flex Cairngorm Java实例是一个基于Adobe Flex的项目,它整合了Cairngorm框架和Java后端服务,用于构建高效且可扩展的 Rich Internet Applications (RIA)。Flex是一种开源的、基于ActionScript的开发工具,用于创建...
- **过度设计**:在小型项目中使用Cairngorm可能导致过度设计,增加不必要的复杂性。 总的来说,Cairngorm框架在大型Flex项目中能够提供良好的结构和组织,帮助开发者创建可扩展、可维护的应用程序。但是,开发者...
Flex Cairngorm框架是Adobe Flex开发中的一个轻量级、基于MVC(Model-View-Controller)设计模式的架构框架,旨在帮助开发者更好地组织和管理复杂的Flex应用。这个框架最初由Adobe公司内部开发,后来成为了开源项目...
通过阅读这篇文章,开发者可以获得关于如何使用Cairngorm框架和Flex进行实际项目开发的宝贵经验。 标签“源码”表明这个压缩包包含的是可以编译和运行的代码,对于学习者来说,可以通过查看和分析源码来理解Flex和...