写点什么

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

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

关注

评论

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

Electronjs

Neil

Java 大前端 Electron 客户端开发

数字货币交易所源码开发,区块链交易系统搭建服务商

13530558032

2020年8月北京BGP机房网络质量评测报告

博睿数据

测试 机房 评测 排行榜 IDC

LeetCode题解:622. 设计循环队列,使用数组,JavaScript,详细注释

Lee Chen

大前端 LeetCode

血的教训!千万别在生产使用这些 redis 指令

redis 学习 编程 程序员

Spring Cloud 微服务实践(1) - 用Initializr初始化

xiaoboey

Spring Cloud Eureka Gateway Hoxton

架构师训练营结业作业

superman

大数据下单集群如何做到2万+规模?

华为云开发者联盟

大数据 集群

实践案例丨云连接CC实现跨区域多VPC与线下IDC Server互联

华为云开发者联盟

云服务 IDC

CentOS 7 安装 Python 3.7

wong

Python

危与机并存 保险业如何走好线上线下业务并举转型之路?

博睿数据

运维 监控 保险 AIOPS 系统

裳雨

GongTeng95

写作 写作平台

活着

GongTeng95

一次压缩引发堆外内存过高的教训

AI乔治

Java kafka JVM

Spring Cloud 微服务实践(2) - Gateway重试机制

xiaoboey

maven Spring Cloud Gateway modules 重试

USDT支付系统开发技术方案,数字货币承兑商支付

13530558032

python——自定义序列类

菜鸟小sailor 🐕

2020年7月云主机性能评测报告

博睿数据

云计算 测试 公有云 评测 排行榜

在线游戏,如何把握住1个亿以上的DAU?

博睿数据

运维 监控 AIOPS 系统 用户体验

高速路二维码报警定位系统开发,二维码报警定位功能

13530558032

Spring Cloud 微服务实践(0) - 开篇闲话

xiaoboey

微服务 Spring Cloud Spring Boot Spring Framework

如何进步神速

Sean

学习 个人成长

直播倒计时|30分钟带你解锁“技术写作”新技能

有只小耳朵

技术 写作 直播 技术创作 RTC征文大赛

数字货币量化交易,量化对冲搬砖系统开发

13530558032

不想搞Java了,4年经验去面试10分钟结束,现在Java面试为何这么难

Java架构师迁哥

Java 基础语法

InfoQ_34a83d636158

架构师训练营大作业

叮叮董董

一次旅途

GongTeng95

UML练习1-食堂就餐卡系统设计

博古通今小虾米

UML

算法大赛评委亲授通关秘籍,报名倒计时!

易观大数据

Python基础知识(二)

Python基础

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