写点什么

用于 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:47622
用户头像

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

关注

评论

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

AI-Compass前沿速览:ChatGPT Agent、Kimi2、Mistral语音模型、Grok AI情感陪伴、百度Tizzy、有言数字人

汀丶人工智能

人工智能 大模型

AI-Compass NLP2SQL模块:集成Chat2DB、DB-GPT、MindsDB等核心工具,实现自然语言到SQL转换的智能化数据查询生态系统

汀丶人工智能

半夜服务器告警不再错过!运维人员必备的语音通知方案

外滩运维专家

电话报警 电话推送 电话接口 监控电话 语音监控

Parrot和DJI系列无人机操作系统内核崩溃漏洞利用分析

qife122

漏洞利用 无人机安全

从Web 2.0到Agentic Web:MCP对智能代理生态构建的推动作用

申公豹

Web

AI-Compass(AI百科全书开源):构建最全面的AI学习与实践生态,服务AI全群体

汀丶人工智能

人工智能 大模型

AI-Compass Embedding模型模块:15+主流向量化技术的多模态语义表示生态

汀丶人工智能

以故事+动画方式,让PID知识通俗易懂部分一

芯动大师

StarRocks × MinIO:打造灵活高效的存算分离方案

StarRocks

Docker 存算分离 StarRocks minlo quickstart

漏洞赏金猎手入门指南:从零开始赚取高额奖金的核心方法论

qife122

渗透测试 漏洞挖掘

Netflix 数据网关实践

俞凡

架构 大厂实践

MKVToolNix for Mac mkv视频编辑工具

晨光熹微

看板管理解析,给生产一点小小震撼!

积木链小链

数字化 智能制造 生产管理 生产看板

AI-Compass LLM训练框架生态:整合ms-swift、Unsloth、Megatron-LM等核心框架

汀丶人工智能

阿里巴巴为什么禁止超过3张表join?

量贩潮汐·WholesaleTide

前端

基于YOLOv8的AI虫子种类识别项目|完整源码数据集+PyQt5界面+完整训练流程+开箱即用!

申公豹

yolov8

AI-Compass RLHF人类反馈强化学习技术栈:集成TRL、OpenRLHF、veRL等框架,涵盖PPO、DPO算法实现大模型人类价值对齐

汀丶人工智能

淘宝商品图片搜索API响应数据解析

tbapi

淘宝API接口 天猫API接口 淘宝图片搜索接口 淘宝拍立淘接口 天猫拍立淘接口

Recompress for Mac PDF文件压缩软件

晨光熹微

javax.security.auth.login.LoginException: null (68)

刘大猫

人工智能 数据挖掘 算法 数据分析 LoginException

AI-Compass LLM合集-多模态模块:30+前沿大模型技术生态,涵盖GPT-4V、Gemini Vision等国际领先与通义千问VL等国产优秀模型

汀丶人工智能

暑热能耗管理成难题?这套智慧方案高效破局!

极客天地

AI-Compass GraphRAG技术生态:集成微软GraphRAG、蚂蚁KAG等主流框架,融合知识图谱与大语言模型实现智能检索生成

汀丶人工智能

​​从数据到决策:低代码+AI如何简化并加速可视化工作流?

不在线第一只蜗牛

大数据-47 Redis 内存控制、Key 过期与数据淘汰策略详解

武子康

Java redis 大数据 分布式 后端

除了企微钉钉,有什么企业 IM 性价比高一点的吗?

BeeWorks

即时通讯 IM 私有化部署

类似腾讯会议的私有化音视频会议软件,BeeWorks Meet

BeeWorks

即时通讯 IM 私有化部署

从 Berlinterop 看三大确定性趋势:以太坊升级与 Layer 2 生态新篇章

NFT Research

Ethereum blockchain web3、

AI-Compass DeepSearch深度搜索生态:集成阿里ZeroSearch、字节DeerFlow、MindSearch等前沿平台,实现超越传统关键词匹配的智能信息检索革命

汀丶人工智能

以故事+动画,让PID知识通俗易懂部分二

芯动大师

MIAOYUN | 每周AI新鲜事儿(07.11-07.18)

MIAOYUN

云计算 AI AI 大模型 AI Agent,

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