写点什么

Arthropod——Flash 和 AIR 调试器

  • 2009-03-03
  • 本文字数:1402 字

    阅读完需:约 5 分钟

对于任何计算机语言和运行时环境来说,调试工具都是软件开发中不可或缺的组成部分。基于 Adobe Flash 平台的 RIA 开发(无论是 Flex 还是 AIR)当然也不例外。随着 Flex/AIR 的不断成熟,涌现出了越来越多的调试工具。 Arthropod 就是其中之一。Arthropod 是个针对 Flash 和 AIR 应用开发的调试工具。InfoQ 有幸采访了 Flash 开发者及 Arthropod 创建者 Carl Calderon 来了解该工具。

在被问到创建 Arthropod 的缘由时,Calderon 嘲弄到“限制滋生了创造性”。之后他说到:

当 AIR 的首个 beta 版发布时,我就实现了一个简单的 hello-world 示例。我发现的第一个问题就是跟踪方法的局限性:跟踪层次越深,我变得越迷糊。还有很多开发者也面临着同样的问题。之后我找到一个调试器,你可以在浏览器中运行它并收集跟踪信息,但对于少量日志的应用来说这太复杂了。我想要的东西应该尽可能类似于 Flash 的输出面板。几天后我使用基本的技术自己开发了一个,这些技术来自于过去的项目积累和临时的突击学习。在发现会经常使用该工具后,我开始进一步扩充我的想法。最后,成就了现在的 Arthropod。

关于目前的调试工具,Calderon 说到:

现在有很多调试工具。随着新版 Flash CS4 IDE 的发布,你可以在测试(而不是运行)AIR 应用时从输出面板中得到跟踪行为。对于一般的 Flash 电影来说也是这样的。一旦开始运行,你就无法再使用日志了。其他调试工具对于大多数用户来说都太复杂了,而且有些还不能很好的处理沙箱限制。到现在为止,我还没发现什么问题是 Arthropod 所无法处理的。

在被问到 Flash/AIR 开发者为何要使用 Arthropod 时,Calderon 说到:

Arthropod 的特别之处在于其易用性,下载后直接就可以使用。你只需使用类中的静态方法就可以完成想要的功能。 大多数人都以正常的情况开始,发布其产品,一旦上线后还要面对出现的问题,他们把问题归罪于 API、领域限制等等,而且他们无法看到背后的事情。如果使用 Arthropod 就可以立刻看到错误消息。

Arthropod 的强大之处不仅在于其易用性,而且它还可以区分不同的日志类型。你可以实时看到数组缓冲的变化、获取对象的快照并能对消息着色以增强视觉效果。

在被问到 Arthropod 的设计时,Calderon 说到:

Arthropod 的设计并不完美,但可行。如果用户不需要,我不想把没用的东西展现出来,比如位图面板和数组面板。因此我把他们藏到主窗口后面了,如果用户需要可以将其显示出来。 就框架来说,除了自己的我没使用其他的框架。Arthropod 的核心引擎是完全独立于用户界面的,其本身就是一个框架。Arthropod 是用 Flash IDE 和 FlashDevelop 开发的。

所用的设计模式也是我自己创造的。它类似于 MVC,但针对 ActionScript 3 做了一些调整。我把它叫做基于事件的模式(event-based-pattern),因为不同的组件可以独立运行,仅通过事件进行交互。

Calderon 正在忙于 2.0 版。该版本将拥有改进的 UI 及一些新特性,但仍旧好用。根据 Calderon 所述,其计划是让 Arthropod 成为 Flash 调试器的不二之选。

为什么叫做“Arthropod”呢?Calderon 说到:

我经常在维基百科上寻找各种信息,我觉得它是个起名的好地方。由于是个调试器,我首先查找的是 bug 相关的信息。在阅读了几个小时的关于蜘蛛的内容后,我突然看到了 Arthropod 还有 Phylum Arthropoda,我觉得这是个希腊语,意为连接的脚。“太棒了”,从那以后我就一直沿用这个名字了。

查看英文原文: Arthropod – A Flash and AIR Debugger

2009-03-03 21:372372
用户头像

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

关注

评论

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

一文读懂HTML和CSS的关系

博文视点Broadview

【得物技术】App需要什么样移动网关

得物技术

App 后端 网关 得物技术 移动端

三无小区整改,平安小区智能化管理平台搭建

t13823115967

智慧社区管理平台开发

用户体验提升计划:前端性能检测清单2021

知识乞丐

大前端 28天写作

架构师训练营第十二周笔记

李日盛

SpringCloud 从入门到精通 03---自动生成数据模型

Felix

Serverless 在 SaaS 领域的最佳实践

阿里巴巴云原生

云计算 阿里云 开发者 云原生 消息中间件

Linux Socket 编程

赖猫

c++ Linux linux编程 linux运维 linux开发

程序员如何让自己更快的废掉?

冰河

程序员 程序人生 规划 职业生涯

灵雀云Kube-OVN 1.5.0新版本发布,支持鲲鹏云平台网络平面部署

York

灵雀云 Kubernetes k8s Kube-OVN

第十届中国云计算标准和应用大会落幕 灵雀云Kube-OVN斩获优秀开源项目奖

York

灵雀云 Kubernetes k8s Kube-OVN

公安一体化警务,合成指挥作战平台搭建

t13823115967

智慧公安

精选算法面试-链表(反转)

李孟聊AI

算法 链表 28天写作

架构师第七周总结

Geek_xq

使用 Jenkins + Docker 构建与部署 Serverless 应用

donghui

Docker Serverless jenkins

聚焦产业链供应链 拓展数字经济新空间

CECBC

数字经济 企业融资

架构师训练营第十二周作业

李日盛

作业

邹平打造区块链生态环境监管体系

CECBC

区块链 生态环境

参加模拟交易活动,抢先一步体验全新升级版EternalWallet!

Geek_c610c0

数字货币 crypto 数字货币钱包开发

灵雀云亮相KubeCon 揭秘Kube-OVN IPAM容器网络实践

York

灵雀云 Kubernetes k8s Kube-OVN

2020,云计算这一年

脑极体

【架构师训练营】大作业二:架构知识总结

MindController

总结 架构师 架构师训练营第 1 期

趣店容器进化史

ZoaChou

容器 k8s

又双叕更新,开源网络插件Kube-OVN 1.4.0 版发布!支持跨集群容器网络、NetworkPolicy 日志

York

灵雀云 Kubernetes k8s Kube-OVN

用 JSX 建立组件 Parser(解析器)

三钻

JavaScript 大前端 组件化

【架构师训练营】大作业一:快递架构设计

MindController

架构设计 架构师

细节爆炸!腾讯用13个案例实战讲明白MySQL,没想到这么全

996小迁

Java MySQL 架构 面试 程序人生

把成员变量转换成局部变量会更快吗?

雨后小溪

Java

[架构师训练营第 1 期] 大作业(二):架构师技术知识导图

猫切切切切切

联通链:5G时代的信任链

CECBC

中国联通

Junit4 Rules 使用

hungxy

Java JUnit

Arthropod——Flash和AIR调试器_Java_Moxie Zhang_InfoQ精选文章