写点什么

用于 Altair Lunar Lander 的 GEMVC ActionScript 框架

  • 2008-12-10
  • 本文字数:1142 字

    阅读完需:约 4 分钟

GEMVC ActionScript 框架在 Johnson Space Center 的 Altair Lunar Lander 项目中被用来开发 Flex 应用。Christopher Dean 是一位解决方案架构师,他创建了 GEMVC,同时他还是 Altair Lunar Lander 项目的可扩展信息模型(XIM)程序的首席科学家。InfoQ 采访了 Dean 以深入了解 GEMVC。

根据 Dean 所述,GEMVC 是一套支持模型——视图——控制器(MVC)模式的 ActionScript 类。但它并不强制要求你使用其全部,你可以选取你想用的那部分来用。它由一个模型及一个控制器框架构成,同时还有一个服务 / 网关层。视图就是 Flex MXML 文件本身。

当被问到为何没有使用现有的某个框架时,Dean 说到:

在创建好自己的服务层后,我对 Adobe Labs 的 Cairngorm 进行了调研。我真的不想改变它,因为我喜欢它的工作方式,这样我就决定围绕它来开发一个 MVC 框架。此外,我对 Cairngorm 只有一个主控制器并且所有东西都需要通过单例来访问的方式不太满意,因为这样只允许存在唯一一个模型及控制器。我要对我的代码进行模块化,这样就可以有单独的控制器来处理应用的不同部分了。理论上每个 Flex 组件都可以拥有自己的控制器。最后,这只是一个风格上的问题。

Dean 解释了 GEMVC 与现有的一些框架如 Cairngorm 之间的一些主要差异:

GEMVC 框架使用的是 Flex 的分发机制而不是自己的。我喜欢这样,因为我们可以用混合的方式来执行事件。在 Cairngorm 中,所有的改变都必须通过模型实现。在大多数情况下这没什么问题。然而有时由于事件的发生,你想对应用进行控制,这甚至可能需要调用现有组件的 ActionScript 方法。借助于 GEMVC,你可以轻松完成这件事而无需知晓组件的路径所在。你只要知道处理该事件的组件的标识符即可。

Dean 说到,除了上面提到的 Altair Lunar Lander 程序外,GEMVC 还被用在 Astromaterials Research 和 Exploration Science Directorate 的 Stardust 项目中。该程序管理着星团探测器所返回的所有样品。

关于未来,Dean 说到:

关于未来,在 riaforge 博客上已经有不少人提出了自己的观点,但我想说的是对于 GEMVC 来说,有三个东西马上就要到来了。 1. 在服务层支持生产者,消费者功能。该功能已经完成了,其发布包随时都可以更新。
2. 支持使用 MXML 标签在 MXML 文件中指定控制器来代替单独的 ActionScript 文件。这是一个风格上的问题,因为相对于 ActionScript,有些人更喜欢用 MXML。
3. 分等级控制器的改进。当前尚没有一种方法可以做到让某个组件控制器处理部分事件,然后再将其传播到更高层的控制器做进一步的处理。在 XIM 项目中已经提出了对此的解决方案,虽然只是一些处理技巧,但确实做的很漂亮。我们也已经对让控制器自己来处理事件而不是由事件本身处理进行了讨论。

查看英文原文: GEMVC ActionScript Framework used in Altair Lunar Lander

2008-12-10 04:47614
用户头像

发布了 88 篇内容, 共 272.9 次阅读, 收获喜欢 9 次。

关注

评论

发布
暂无评论
发现更多内容

极氪汽车×火山引擎:AI数据专家“上岗”,注入“分钟级”数据洞察力

北京中暄互动广告传媒有限公司

AI 姓氏头像生成小程序管理系统:专属头像定制与流量变现解决方案

微擎应用市场

直播 QoE 监控体系设计与落地(二):流媒体卡顿优化实践

奔跑中的蜗牛666

android 音视频 卡顿

区块链U卡APP的开发

北京木奇移动技术有限公司

区块链开发 软件外包公司 U卡APP

俄罗斯合作伙伴 Mobx,用 NocoBase 交付多场景方案

NocoBase

数据库 开源 项目管理 CRM 无代码

点量云流核心技术解析:构建高性能数字孪生的三大架构设计

点量实时云渲染

云计算 3D渲染 数字孪生 云渲染 像素流

启信慧眼AI驱动供应链风险决策,助力中国半导体企业安全出海

合合技术团队

人工智能 大数据 算法

联想ThinkStation PGX桌面AI超算工作站正式发售,AI开发迈入“掌机"时代

科技范儿

ChatBI如何重塑企业数据分析?2025年智能BI行业趋势解读

飞鲤

数据分析 BI BI 分析工具 ChatBI

使用 Visual Studio 快速创建 NuGet 程序包并发布到 NuGet 官网

追逐时光者

.net 微软 Visual Studio 2022

利用Playwright MCP与LLM构建复杂的工作流与AI智能体

测试人

在AI技术唾手可得的时代,挖掘直播工具新需求成为关键突破点

qife122

AI应用 直播工具

【AI算法RFID门禁选型指南】如何判断识别精准度与防串读能力?

斯科信息

斯科信息 AI算法RFID门禁 AI门禁 AI智能门禁

不做“赛博棉花工”!TRAE 帮我实现数据处理自由

北京中暄互动广告传媒有限公司

为什么要做海外营销?

Wolink

海外社媒营销 海外营销推广 沃链Wolink 达人营销

一篇教你读懂主流LLM平台:企业如何选择LLM平台

伊克罗德信息科技

基于 Seedream 4.0 模型的多图融合应用开发实战(下)

北京中暄互动广告传媒有限公司

为什么你的海外红人营销没效果?

Wolink

海外营销推广 海外推广 沃链Wolink 达人营销

开源生态视角下 MyEMS 的能源管理系统国产化实践:架构设计与自主可控路径

开源能源管理系统

开源 开源能源管理系统

Dify 企业版 vs. 社区版:为规模化应用构建而生的企业级优势解析

伊克罗德信息科技

在AI技术快速实现创意的时代,挖掘新需求成为核心竞争力——某知名笔记应用主题需求洞察

qife122

用户体验 需求分析

扬帆出海:FinClip 驱动中国应用的全球化降本增效实践

xuyinyin

企业能源数字化转型的关键路径:MyEMS 的多系统集成方法论与接口标准化实践

开源能源管理系统

开源 能源管理系统

如何通过Python SDK在Collection中进行相似性检索

DashVector

人工智能 数据库 AI 大模型

知音 CMS:全场景音频与小说分销一体化解决方案

微擎应用市场

从0到1掌握1688API:图片搜索获取技巧与避坑指南

tbapi

1688API 1688店铺数据采集 1688店铺所有商品API 1688整店商品采集

一文读懂更换域名注册商的步骤和常见问题

防火墙后吃泡面

数加加Edu:开箱即用的全链路AI数据标注实训平台

数据堂

人工智能 数据标注 实训平台 教育实训 数加加Edu

CVE-2023-34367:Windows盲TCP/IP劫持漏洞技术分析

qife122

漏洞挖掘 漏洞利用

AI 英语写作导师 App的开发

北京木奇移动技术有限公司

AI技术开发 软件外包公司 AI技术应用

MyEMS 支撑公共建筑低碳运营:多维度能耗建模逻辑与运行优化策略

开源能源管理系统

开源 能源管理系统

用于Altair Lunar Lander的GEMVC ActionScript框架_Java_Moxie Zhang_InfoQ精选文章