`

Flex Cairngorm之旅(小项目实例)

阅读更多
  • 引言:做flex开发有一个月了,对Flex Cairngorm有了一点初步的了解,写了一个小程序希望大家互相探讨学习交流。
  • 完成时间:两个晚上
  • 项目介绍:登录后台管理用户,用户信息存储在xml文件里,可以实现增、删和修改用户的信息。
  • 所用技术:Flex /Cairngorm/ Xml /HttpService /Actionscript3.0/ FlashDebug etc.
  • 项目截图:看文章底部附件
  • Cairngorm 框架介绍:

 

Cairngorm Abode 推出的 Flex RIAs 框架,其实是 MVC 的发扬光大,它由七大部分组成。

1.  Model( 数据模型 M) :使用 singleton( 单例 ) 模式共享变量;

2.  VO( Value Object) :储存特定值对象变量。

3.  View( 视图 V) :将 Model 的数据绑定互组件并广播侦听 Cairngorm Event

4.  Controller( 控制器 ) :侦听 Cairngorm 事件并将其映射到 Cairngorm Command

5.  Command( 命令 ) :调用 Cairngorm Delegate 或其它 Command ,并更新 Model

6.  Delegate( 委托 ) :实例化 RPC( 远程过程调用 ) 并将其结果返回给 Command

7.  Business( 业务 ) :定义 RPC

cairngorm 框架 定义了一种开发体系,并以此来规范开发者对项目代码的划分。这个体系包括以下几个部分。

1 :值对象 VO

值对象用来定义基本的数据结构,强化数据类型,以便在应用程序的各层之间传递数据进行严格的数据类型检测。通常服务器端返回的数据都应在客户端序列化为相应的值对象类型。提供了 ValueObject ,和 IValueObject 。建议开发人员在创建值对象类时实现该接口。

2 :数据模型 Model

cairngorm model 提供了 ImodelLocator ModelLocator 的模型定位器接口, ModelLocator IModelLocator 派生,实际应用的时候我们需要实现他们的类和接口,来集中放置应用程序中的全部数据和状态。

3 :视图层 View

cairngorm view 提供两个类 ViewHelper ViewLocator 。它们是用来控制视图层代码的。 ViewHelp 用来封装视图的代码,一边控制层和视图层的分离。 ViewLocator 是用来管理和存放视图的 ViewHelp 以便统一管理。

4 :命令 command

cairngorm 里的 command 包中包行 Command I Command sequenceCommand 类, Command 是有 Icommand 派生的。所有这些接口都实现 execute ()方法 。该方法接受 cairngormEvent 类型参数。 sequenceCommand 类是用来创建队列中的命令。在实际应用中有时候会连续调用多个命令。因此 sequenceCommand 提供了 nextEvent 属性和 executeNextCommand() 方法。 nextEvent 属性用来指定下一个 command 相应事件, executeNextCommand ()会派发由 nextEvent 属性指定的事件与该事件响应的方法就该执行。

5 :控制器 control

cairngorm cotrol 包中包含 cairngormEvent cairngormEventDispatcher FrontController 类。 cairngomEventDispatcher 是一个单例模式。它提供了一个事件派遣器的实例,所有 cairngormEvent 类型的事件都是由它派遣的 。使用这种方法可以简化传递过程,在应用的任何地方,只要对 CairngormEventDispatcher 的实例进行侦听就可以捕获到相应的 c airngormEvent 事件。 FrontController 类是用来建立事件与命令直接的映射关系的。

6 :业务逻辑 Business

Business 包提供访问远程服务器所需要的类和接口,通常我们只需要使用其中的两个, ServiceLocator Respnser 接口。 serviceLocator 是单例模式的类,用来提供服务器的远程调用 RPC. 这种调用通过 HTTPService WebService RemoteObject 进行。而这些远程访问的结果都有 Responser 接口类执行。

7 :委托类 Delegate Command 和服务器连接起来, Command 通过 Delegate 调用服务器又从服务器里获得返回结果传给 Command



  • 大小: 12.6 KB
  • 大小: 33.1 KB
  • 大小: 30 KB
2
2
分享到:
评论
5 楼 chensong215 2012-12-12  
guangqiang 写道
chensong215 写道
都不用Cairngorm,开发工作量太大,冗余代码也多。

嗯 不过对初学者练习FLEX mvc架构还是挺好的
企业中我们常用parsley 和pureMVC
不知老兄你们常用?哪些?????



我们都不用框架,就是自己写
4 楼 guangqiang 2012-12-11  
chensong215 写道
都不用Cairngorm,开发工作量太大,冗余代码也多。

嗯 不过对初学者练习FLEX mvc架构还是挺好的
企业中我们常用parsley 和pureMVC
不知老兄你们常用?哪些?????
3 楼 chensong215 2012-12-11  
都不用Cairngorm,开发工作量太大,冗余代码也多。
2 楼 guangqiang 2010-10-26  
varyall 写道
Cairngorm 是 Abode 推出的 Flex RIAs 框架,其实是 MVC 的发扬光大,它由七大部分组成。

1.  Model( 数据模型 M) :使用 singleton( 单例 ) 模式共享变量;

2.  VO( Value Object) :储存特定值对象变量。

3.  View( 视图 V) :将 Model 的数据绑定互组件并广播侦听 Cairngorm Event ;

4.  Controller( 控制器 ) :侦听 Cairngorm 事件并将其映射到 Cairngorm Command ;

5.  Command( 命令 ) :调用 Cairngorm Delegate 或其它 Command ,并更新 Model ;

6.  Delegate( 委托 ) :实例化 RPC( 远程过程调用 ) 并将其结果返回给 Command ;

7.  Business( 业务 ) :定义 RPC 。

上面对于每一个的功能都说的挺清楚的,你的文章我收了,直接转载了。同意情回复。

嗯,朋友,你好,可以转载啊。希望以后互相学习 共同进步~。~
1 楼 varyall 2010-10-21  
Cairngorm 是 Abode 推出的 Flex RIAs 框架,其实是 MVC 的发扬光大,它由七大部分组成。

1.  Model( 数据模型 M) :使用 singleton( 单例 ) 模式共享变量;

2.  VO( Value Object) :储存特定值对象变量。

3.  View( 视图 V) :将 Model 的数据绑定互组件并广播侦听 Cairngorm Event ;

4.  Controller( 控制器 ) :侦听 Cairngorm 事件并将其映射到 Cairngorm Command ;

5.  Command( 命令 ) :调用 Cairngorm Delegate 或其它 Command ,并更新 Model ;

6.  Delegate( 委托 ) :实例化 RPC( 远程过程调用 ) 并将其结果返回给 Command ;

7.  Business( 业务 ) :定义 RPC 。

上面对于每一个的功能都说的挺清楚的,你的文章我收了,直接转载了。同意情回复。

相关推荐

    flex完全自学手册

    书中详细介绍了如何下载和安装这些软件,确保读者能够顺利开始学习之旅。 ### 3. HelloWorld示例 “Hello World”是编程学习中的经典入门项目,本书也以此为例,帮助读者快速上手Flex的基本语法和工作流程。通过...

    FLAC3D隧道台阶法施工模拟:命令操作与支护结构一体化构建

    内容概要:本文详细介绍了利用FLAC3D进行隧道台阶法施工模拟的方法和技术细节。首先解释了隧道台阶法施工的基本流程,重点在于开挖命令的应用,如'zone cmodel assign'和'zone remove'用于改变区域本构模型并执行开挖操作。接着阐述了支护结构的设置方法,包括超前加固体、初衬、二衬、锚杆和锁脚锚杆的具体配置方式。此外,还讲解了如何通过'mesh'命令直接在FLAC3D中生成符合实际工程需求的网格模型。最后展示了模拟后的围岩体位移云图和应力云图,验证了计算结果的有效性,强调了这些数据对优化施工方案的重要性。 适合人群:从事岩土工程、隧道工程及相关领域的工程师和技术人员。 使用场景及目标:适用于需要进行隧道施工模拟的专业人士,旨在提升他们对FLAC3D的理解和应用能力,确保隧道施工的安全性和高效性。 其他说明:文中提供的实例和命令操作均基于真实项目经验,有助于读者更好地理解和掌握FLAC3D的实际应用技巧。

    纤维骨料细观尺度混凝土模型:基于多有限元软件的网格划分与应用

    内容概要:本文介绍了纤维骨料细观尺度混凝土模型的设计与应用,重点在于如何通过控制骨料尺寸和体积率,在不同有限元软件(如Abaqus、Ansys、Ls-Dyna、Flac3d)中进行有效的四面体网格划分和六面体网格投影。文中提供了生成随机骨料位置和直径的Python代码片段,并详细解释了网格划分过程中需要注意的技术细节,如碰撞检测、网格转换公式以及材料属性设置。此外,还讨论了模型验证的方法及其在实际工程项目中的应用价值。 适合人群:从事土木工程、材料科学领域的研究人员和技术人员,尤其是那些需要利用有限元方法进行混凝土结构分析的专业人士。 使用场景及目标:①帮助工程师更好地理解和预测纤维混凝土的行为特性;②为实际工程项目提供理论支持和技术指导,从而优化纤维混凝土的应用;③提高仿真精度,减少实验成本和时间。 其他说明:文中提到的一些具体操作步骤和技术细节对于初学者来说可能具有一定挑战性,建议读者在实践中逐步掌握相关技能并积累经验。同时,正确设置物理量单位非常重要,错误的单位可能导致计算结果严重偏离预期。

    嵌入式八股文面试题库资料知识宝典-c++个人笔记总结.zip

    嵌入式八股文面试题库资料知识宝典-c++个人笔记总结.zip

    工业自动化领域西门子S7-1200 PLC模块、板卡及多协议通讯详解

    内容概要:本文详细介绍了西门子S7-1200 PLC在工业自动化领域的应用,重点讲解了其模块、板卡和通讯方式。首先概述了PLC模块和板卡作为基本单元的作用,接着深入探讨了支持的多种通讯协议,包括Modbus-RTU、S7通讯、Modbus-TCP和TCP/IP等。每种协议都配有具体的代码分析和调试方法。最后,介绍了博途V16编程软件的使用体验,强调了其对S7-1200 PLC编程的支持。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对西门子S7-1200 PLC有初步了解或希望深入了解的人群。 使用场景及目标:适用于需要掌握PLC模块化设计、不同通讯协议的应用场景,旨在帮助读者理解PLC的工作原理,提高编程和调试能力,从而更好地应用于实际项目中。 其他说明:文中提供的实例和代码分析有助于读者快速上手,同时推荐使用博途V16及以上版本的编程软件进行实践操作。

    Comsol仿真无模型等离子体空气反应框架:多气体反应及关键参数求解

    内容概要:本文介绍了Comsol仿真软件在等离子体空气反应领域的应用,重点探讨了其无模型反应框架的功能。该框架能模拟超过40种气体(如氧气、氮气、氦气)的详细反应过程,提供碰撞截面数据、迁移率扩散系数、速率系数和汤森系数的查询与求解功能,并通过bosig+模块实现自定义反应路径的选择。此外,文中强调了代码分析与实践应用的重要性,以及这些功能如何提升等离子体反应研究的效率和准确性。 适合人群:从事等离子体物理、化学反应动力学及相关领域研究的专业人士和技术人员。 使用场景及目标:适用于需要精确模拟复杂等离子体环境中气体反应的研究项目,旨在提高对等离子体反应机制的理解,优化实验设计,预测反应行为。 其他说明:Comsol仿真软件凭借其强大的计算能力,在等离子体研究中扮演着重要角色。随着技术的发展,该框架有望进一步推动相关领域的创新和发展。

    嵌入式八股文面试题库资料知识宝典-同方万维硬件测试工程师.zip

    嵌入式八股文面试题库资料知识宝典-同方万维硬件测试工程师.zip

    嵌入式八股文面试题库资料知识宝典-c,c++笔试.zip

    嵌入式八股文面试题库资料知识宝典-c,c++笔试.zip

    少儿编程scratch项目源代码文件案例素材-激光连接.zip

    少儿编程scratch项目源代码文件案例素材-激光连接.zip

    嵌入式八股文面试题库资料知识宝典-奔图电子-软件笔试试题v1.1(C,C++工程师).zip

    嵌入式八股文面试题库资料知识宝典-奔图电子-软件笔试试题v1.1(C,C++工程师).zip

    嵌入式八股文面试题库资料知识宝典-国科环宇有限公司.zip

    嵌入式八股文面试题库资料知识宝典-国科环宇有限公司.zip

    基于LDA主题模型对AIGC的影响力分析.pdf

    基于LDA主题模型对AIGC的影响力分析.pdf

    HG2543C1EPON天翼网关(4口单频)rootfsA

    可以自己添加应用和功能版,在/opt/upt/apps/下面添加ubin目录和ulib目录,把你想用的程序添加到ubin,支持模块添加到ulib中,就可以运行,具体刷机操作,请看《》

    遗传算法在冷链物流与多配送中心VRP车辆路径优化中的应用及改进

    内容概要:本文探讨了遗传算法在车辆路径优化问题(VRP)中的应用及其改进,特别是在冷链物流、软时间窗和多配送中心场景下的路径优化策略。文中介绍了遗传算法通过模拟自然界进化过程来寻找最优路径解决方案的能力,并详细讨论了其在冷链物流中的重要性,即确保产品运输过程中的温度稳定和时效性。此外,还提到了软时间窗概念的应用,以平衡客户满意度和运输成本。在多配送中心场景下,遗传算法能有效处理复杂路径规划问题,如外卖配送路径优化和充电桩电车车辆路径优化。除了遗传算法,蚁群算法、模拟退火算法和粒子群算法也在不同类型的路径优化问题上得到广泛应用,如旅行商问题(TSP)、容量约束的车辆路径规划(CVRP)和带距离、容量和时间窗约束的车辆路径规划(VRPTW)。最后,文章强调了遗传算法改进的研究方向,旨在提高运算速度和精度,从而提升物流效率和客户满意度。 适合人群:从事物流与运输领域的研究人员和技术人员,对车辆路径优化感兴趣的学者和从业者。 使用场景及目标:适用于冷链物流、外卖配送、充电桩电车等多种实际应用场景,旨在优化路径规划,降低运输成本,提高客户满意度。 其他说明:本文不仅介绍了现有算法的应用情况,还指出了未来可能的研究方向和发展趋势。

    物流车辆路径优化研究:基于MATLAB的VRP、VRPTW及冷链物流与充电桩优化算法

    内容概要:本文详细介绍了物流领域的车辆路径优化(VRP)及其扩展问题——带时间窗的车辆路径优化(VRPTW),并探讨了冷链物流车辆路径优化(考虑充电桩需求)。文中通过MATLAB实现了遗传算法解决这些问题的具体步骤,包括参数设置、种群初始化、适应度函数计算、遗传算法循环等。此外,还讨论了多配送中心场景下的路径优化挑战和其他优化算法(如蚁群算法、粒子群算法、节约算法和模拟退火算法)的应用。最后,针对冷链物流和电动汽车路径优化提出了具体的解决方案和技术细节。 适合人群:从事物流管理、运筹学、算法设计的研究人员和工程师,尤其是对MATLAB有一定基础的技术人员。 使用场景及目标:适用于需要优化物流配送路径的企业和个人,旨在提高配送效率、降低成本、提升服务质量。具体应用场景包括但不限于城市配送、冷链运输、电动车辆调度等。 其他说明:文中提供了完整的MATLAB代码示例,帮助读者更好地理解和实践各种优化算法。同时,强调了不同算法的特点和适用条件,便于读者根据实际情况选择最合适的算法。

    嵌入式八股文面试题库资料知识宝典-文思创新面试题2.zip

    嵌入式八股文面试题库资料知识宝典-文思创新面试题2.zip

    嵌入式八股文面试题库资料知识宝典-网络编程.zip

    嵌入式八股文面试题库资料知识宝典-网络编程.zip

    少儿编程scratch项目源代码文件案例素材-火柴人防御.zip

    少儿编程scratch项目源代码文件案例素材-火柴人防御.zip

    AI数字形象制作口播视频

    AI数字形象制作口播视频

Global site tag (gtag.js) - Google Analytics