BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

ActionScript 3.0争论何时休?

| 作者 Moxie Zhang 关注 0 他的粉丝 ,译者 沙晓兰 关注 0 他的粉丝 发布于 2008年10月6日. 估计阅读时间: 5 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

自从独立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?

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT