写点什么

ActionScript 3.0 争论何时休?

  • 2008-10-05
  • 本文字数:1672 字

    阅读完需:约 5 分钟

自从独立 Flash 平台专家—— Colin Moock 七月份在 O’Reilly InsideRIA 发表了一篇名为“ The Charges against ActionScript 3.0 ”文章之后,Flash/Flex 社区内的争论一时间硝烟四起。

“……很多 Flash 用户仍然对 ActionScript 3.0 中引入的一些工作流方面的变化望而生畏。这些改变本身真正存在问题的很少,但当他们集合到一起的时候,就对 Flash 用户典型的日常工作产生不可磨灭的影响。” Moock 的这句话是引发整个争论的导火索。

Moock 在文章中指出了 9 条对 ActionScript 3.0 的不满:

  1. Flash CS3 去掉 on()/onClipEvent() 以后,即使是简单的交互都很难创建。
  2. 很难习惯没有加载的.swf 文件。
  3. 向上溯型 DisplayObject.parent 使得父对象的 clips 很难控制。
  4. 没有 getURL() 之后,连接比较困难。
  5. 没有 loadMovie(),加载.swf 文件和图像都不方便。
  6. ActionScript 3.0 中其他一些错误导致编程非常麻烦。
  7. 动态指向类库符号一点都不直接。
  8. 向手动创建的文件域、所有影视片段、所有按钮添加定制功能很费时间。
  9. 去掉 duplicateMovieClip() 之后,复制 MovieClip 实例变得非常困难。

Moock 针对上面列出的每条都做了深刻的解释,也提出了一些建议。Atlanta Flash Community 的 Leif Wells 表示有同感,他说:“毫不夸张地说,在我们向社区成员展示一些 ActionScript 3.0 的代码的时候,就遇到一些成员因此浑身冒冷汗。他们现在大都对 Flash Player 10 的特性比较感兴趣,但很多人目前为止还无法掌握这些特性。”

然而, andCulture 的主管 Francis Lukesh 从另一个角度来审视 Flash 的改进。他说:

有的人从 Macromedia 收购 FutureSplash 之后就开始使用 Flash;有的人除了有设计动画的背景以外还有编程经验。对于这些人,我赞同 Adobe 的决定,赞同他们在 Flash 中借助 AS3 来提供更具结构化的 ActionScript 实现。我想信,这一极具决策性的手笔能够把 Flash 打造成一个真正的 RIA 开发值得选择的平台。

说工具箱不能通过编写抽象的 API 来提供文章中提到的那些功能是毫无理由的。实际上,这样的工具箱能够帮助设计师、动画制作者在保留 AS3 完整构架的基础上提高他们的开发效率。

Exanimo 的 Matthew Tretter 以开发者而不是设计者的身份表示不同意作者的观点:

通常,我对那些编程语言为了尽量让非程序员都能应用而所作的改变很麻木(相反,我觉得编程语言应该要尽量方便程序员的应用)。在你提出的那几点中,我觉得有些其实根本不是因为功能难用,只是跟之前不一样罢了。习惯了以前的某种用法,并不意味着这种用法就是直接的,或者说是简单轻巧的。有时候,那些习惯用法实际上反而很费力,就比如说这个 on() 构造。

Flex 开发员 Steve 的意见似乎比较中庸,他说:“作为一个全职的 AS3 开发员,在 Flex Builder 这种‘奢侈‘工具的帮助下,我没怎么遇到文中提到的那些不便。但在使用 Flash 很多年以后,我完全理解这些忧虑。“

另一个 Flash 开发员 John Isaacks 说他已经把习惯改过来了:

我从版本 4 的时候开始使用 Flash(编程、制作动画)。ActionScript 是我学习的第一门编程语言。在 ActionScript 3 刚推出的时候,我感到非常恐惧,主要是因为在新建一个 flash 文件,以之前习惯的方式编写代码的时候,我得到的却是很多错误提示。

……现在,我比此前任何时候都理解 ActionScript。我也觉得 AS3 在很多方面没有 AS2 那么直接(有些时候,我还是会发现自己不自觉地在用一些 AS2 中的简易方法)。

Moock 这样回复这些异议:

坦率地说,我还是强烈支持使用变化不多的编程工具。我喜欢 ActionScript 3.0,也觉得 Flash 成长为一个开发平台是件很不错的事情。Adobe 终于为程序员提供一些功能强大的工具——比如 Flex Builder、ActionScript 3.0 profiler、 ASDoc、ANT 集成、数据服务、干净利落的 debugger、命令行编译器、Flex 框架、公用的 bug 数据库、针对 UI 开发的 MXML 等等,这令人非常振奋。可见,Adobe 对 Flash 程序员这个群体还是提供了很多支持的,而且他们的努力也必然能够吸引更多的开发员来使用 Flash。

随着技术的推进,这类“健康”的讨论也会延续下去。

查看英文原文: Is the ActionScript 3.0 Debate Over?

2008-10-05 09:352068
用户头像

发布了 71 篇内容, 共 21.6 次阅读, 收获喜欢 3 次。

关注

评论

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

一文读懂有关 LISTA、bitget 钱包的所有信息

股市老人

田间地头“有智慧”,华为云助力盈禾嘉田打造病虫害防治新模式

华为云开发者联盟

人工智能 机器学习 华为云 华为云开发者联盟 企业号2024年7月PK榜

【YashanDB知识库】手动停止统计信息自动收集任务导致的性能变差

YashanDB

yashandb 崖山数据库 崖山DB

【YashanDB知识库】数据变化率超过阈值统计信息失效

YashanDB

yashandb 崖山数据库 崖山DB

Lazada商品详情数据接口API使用教程:轻松集成,高效管理

tbapi

lazada商品详情数据接口 lazada API lazada商品数据采集 lazada

Databend 开源周报第 153 期

Databend

TON钱包选择全面资产保护教程,bitget钱包

BlockChain先知

AI+资源数据分析运营助手

鲸品堂

AI 运维 资源管理 企业号2024年7月PK榜

【7月27日丨上海】Elastic & 阿里云邀您参加 AI 搜索 Tech Day

阿里云大数据AI技术

人工智能 elastic

在MoneyPrinterPlus中使用本地chatTTS语音模型

程序那些事

工具 程序那些事 AIGC MoneyPrinterPlus

在 JeecgBoot 项目中基于 Vue 3 配置多页面入口

JEECG低代码

前端开发 Vue3

移动端风险频发,设备指纹牢筑安全防线

芯盾时代

终端安全 移动安全

性能测试:性能测试报告

测试人

软件测试

大模型落地,「city不city」?

白洞计划

AI

在 Go 中如何使用 go:embed 指令嵌入静态文件

江湖十年

Go golang 后端 golang 面试

好用的Mac应用程序清理卸载工具:App Cleaner & Uninstall

你的猪会飞吗

Mac 软件

前端打包工具Mako架构解析|得物技术

得物技术

rust webassembly web前端 构建工具 企业号2024年7月PK榜

解读MySQL 8.0数据字典缓存管理机制

华为云开发者联盟

MySQL 数据库 华为云 华为云开发者联盟 企业号2024年7月PK榜

【YashanDB知识库】收集分区表统计信息采样率小于1导致SQL执行计划走偏

YashanDB

yashandb 崖山数据库 崖山DB

人工智能与机器人学:智能自主系统的融合与未来

天津汇柏科技有限公司

人工智能 机器学习人工智能

深入探索孔夫子旧书网商品详情数据接口:解锁二手书市场的无限可能

tbapi

孔夫子网 孔夫子商品详情数据接口 孔夫子商品数据采集 孔夫子网API

百度智能云将大模型引入网络故障定位的智能运维实践

百度Geek说

网络 智能运维 大模型 企业号2024年7月PK榜

PostgreSQL可视化表结构设计

NineData

postgresql 表结构 可视化工具 NineData SQL编写

ActionScript 3.0争论何时休?_Java_Moxie Zhang_InfoQ精选文章