| VB 源码 | VC 源码 | ASP源码 | JSP源码 | PHP源码 | CGI源码 | FLASH源码 | 素材模板 | C 源程序 | 站长工具 | 站长教程 |

网页设计

网站策划
网页设计

本类阅读TOP10

·经典网页设计欣赏
·Flash Loading制作全接触
·用Flash制作简单闪光字
·下拉菜单全攻略(Javascript篇)
·PhotoShop热键大全
·网页效果集合
·哈利波特书封面设计欣赏
·教你最基本的国画常识(图文解说)
·一流的设计师,一流的PHOTOSHOP教程
·Flex 入门教程

站内搜索

给ActionScript初学者的建议
在论坛当斑竹时间长了,经常会碰到有朋友提出这样的问题:我是菜鸟,请问高手,AS到底该怎么学?我自认算不上高手,但三年的AS编程经验,多少也可以算半个老手(应了蓝色那句话:没有菜鸟和高手之分,只有新手和老手之别),之所以这么说,就是为了先表明立场,在网上混了这些时间,国内的AS顶尖高手我大都还算认识,自知尚无资格与他们比肩,之所以恬不知耻撰此一文,实在是不忍看着众多初学者因为摸不着学习的门路而苦苦摸索抑或干脆放弃,文中所述均为笔者个人愚见,有欠妥之处欢迎探讨。另外,非常感谢AOL,他提供了文章中用到的一些很重要的信息。

一、什么是AcionScript?

随手翻开一本技术类书籍,第一章第一节多半以“What's xxxx”做标题,要学习学一样技术,当然最先要弄清它是什么。用最简单的一句话定义:AS是一种脚本语言。

这句话里有两个关键词:
一、语言:所有的计算机语言都是相通的(包括汇编语言、中级语言、高级语言),这意味着如果你曾经系统的学习过其他的某种计算机语言,那么AS入门将变得非常容易。
二、脚本:这说明AS是一种解释型语言(或称为脚本语言)。它具备了解释型语言的优点:快速开发,动态性,学习门槛低等等,同时它也继承了相应的缺点:最主要的两个缺点是效率低下和源代码外露。这也是让当今Flash开发者极为头痛的两个问题,效率低下,意味着Flash无法有效的完成一些复杂的算法(就拿递归来说,Flash中仅允许256层深度的递归)。而源代码外露,则让Flash作者的版权无法得到有效的保护,国内外很多著名的反编译软件都可以让Flash中的程序代码无处遁形。尽管如此,毕竟瑕不掩瑜,Flash AS仍然是一种简单易用,功能强大的脚本语言,高超的AS编程技巧+良好的美工+优秀的创意可以打造出许许多多令人瞠目结舌的作品:绚丽的特效,趣味性极强的的游戏,功能强大的网络应用程序....然而,这一切都是要从最基础到如变量、函数开始(当然,如果你有编程基础那就另当别论),在宏伟的大厦也是一砖一瓦建设起来的,不是吗?

二、解释型?编译型?跨平台?

可能有朋友注意到,刚才谈到Flash的源代码外露的问题时,有这样一句话“很多著名的反编译软件....”,即曰“解释”,又何以“反编译”?并非是我出尔反尔,Flash AS的的确确是通过解释执行的,而用来解释+执行的工具,就是大名鼎鼎、拥有98%浏览器占有率的Flash Player。然而,在你把源程序放心交给Flash Player去执行之前,必须要经过一个“编译”的过程,它将源代码转换成一种可以被FP识别的标签(tag)。而这些标签被以ZIP方式压缩存储在.swf格式的文件中。当然,一个.swf文件中除了包含AS,还有图形、声音等资源。在“解释”之前先进行“编译”并非是多此一举,编译的好处主要有三个:

一、经过编译后的源代码,以标签(称为“目标代码”)的形式存在,更容易被Flash Player识别,因而可以提高解释速度。
二、编译过程可以预先检测程序中的语法错误,并给出适当的错误信息,方便调试。
三、编译过程也是代码压缩的过程,编译后的代码更加精简。

这么说来,把AS称为一种纯粹的解释型语言就有失妥当了,我们可以把它归类为一种“混合型”语言。混合型语言的特点是,源代码先经过编译,生成一种“中间代码”,在由相应的平台(Flash Player)去解释执行中间代码。混合型语言中的佼佼者当属现在同样火热的Java语言:Java语言的源代码(.java)经过编译,得到字节码(.class),在由平台(JVM)去解释执行字节码。不幸的是,混合型语言的这种这种“编译”过程通常是可逆的,无论是java还是flash,都可以根据其中间代码,反编译得到源代码。而且,反编译swf的难度要远远低于class,而在编译过程中加密要复杂的多,这也就是为什么如今flash反编译软件横行的原因。

Flash Player的另一个优势是提供了跨平台性,无论何种平台,只要拥有内嵌Flash Player的浏览器或是独立的Flash Player播放器,就可以欣赏Flash,而swf文件本身不需要任何的改变,不同的只是Flash Player在各个平台的实现方式而已。这一点也是它能够广泛应用于互联网的原因之一。
可能有的朋友想到Flash的另一种播放方式,即Projector方式,通常我们所见到的是一个.exe文件。然而需要注意的是,以Projector方式发布的Flash,是不具备跨平台能力的。只要明白了Projector的原理,就可以很容易理解这一点,其实Projector仅仅是简单的将一个独立的Flash Player播放器和swf文件整合,前面提到,不同平台的Flash Player实现不同,因此,被整合到Projector中的swf无法使用不同的Flash Player播放,自然也就失去了其跨平台性。Projector真正的好处在于,可以让原本没有Flash Player的机器,在不安装FP的情况下,浏览Flash。其效果大致相当于你去买DVD光碟,但是你没有DVD机,因此卖光碟的小贩免费送了你一台DVD机一样。当然,现实中不可能有这样的好事。:)

三、学习AS需要不需要有编程基础?如果需要,该去学习那种语言?

这是一个经常听到的问题。我前面曾经提到,如果你有着其他语言的编程基础,学习AS将变成一件非常容易的事。但如果没有呢?是不是会很困难?答案是否定的。

总的来说,AS是一种相对比较简单的语言,甚至你可以用它来作为你进入编程世界的第一步。如果你有着c/java/js的编程经验,你将会发现AS只是你曾经学习并掌握的知识的一个子集,你面对的仅仅是不同的API,仅此而已。然而,如果你的目的只是为了学习AS,那你完全没有必要为了它先去学习其他任何一种语言,这就像你为了弄明白1+1=2,而费尽九牛二虎之力去研究2+2=4一样,本末倒置。你现在所要做的,就是从最基础开始。何谓基础?变量、数据类型、运算符等等都算是基础,学了一段时间编程却仍然搞不清楚i++与++i的区别的人不在少数。不要小看它们,对基础概念掌握的不牢固,可能会为你将来的编程经历造成重大的困扰,正所谓千里之堤,溃于蚁穴。在这个时候,你可能需要一本书来帮助你,笔者极力推荐下面这本书:



看到他的封面,你就知道这本书是由鼎鼎大名的O'reilly公司出版。如今,O'reilly公司的出版物俨然已成为计算机技术图书的标准,看到了O'reilly的标志,就等于看到了质量的保证。(我所说的仅仅是针对英文原版而言,对于有条件的读者来说,应该尽可能阅读英文原版。英语不好也没关系,看看 www.blueidea.com/bbs/archivecontent.asp?id=799443)
这本书可以说是Flash ActionScript的绝佳入门书籍,书中系统地阐述了AS中所有的基础内容,包括:变量,数据与数据类型,原始数据类型,运算符,语句,条件语句,循环控制语句,函数,事件与事件处理,数组,对象与类等等。

先不要被这一大堆内容吓倒,聪明的你应该很容易理解它们,学习的目的在于运用。因此,对你来说最重要的是按照书中的例子重新做一遍,以加深理解,最好能够修改那些例子,并对出现的错误加以分析。这样,你将会发现自己的进步速度之快甚至超过了自己的想象,尽管你现在还不能做出什么像摸象样的东西,但是,这将为你今后的成就奠定坚实的基础。有的朋友总是不重视这样的基础训练,认为创意、思想最为重要,诚然,我不否认创意在我们工作中的重要性,但好的创意,也是需要基础来实现的,否则,你充其量只能做个空想家罢了。




相关文章
  • 让SWF文件不显示在IE缓存中
  • 一个Flash调色板
  • 在List组件中使用渲染器
  • 实现2004中Media组件多首mp3连放
  • 验证身份证号是否正确的代码
  • Flash 与 html 的一些实用技巧
  • Flash MX 2004 数据绑定
  • 用Flash模拟“穿越时空”
  • Flash 交互打字效果
  • Flash做文字随波逐流的效果
  • 用Flash 5制作动感按钮
  • Flash制作文字“幻影”
  • Flash Loading制作全接触
  • 用Flash制作简单闪光字
  • 一个很cool的FLASH水波制作
  • 用Flash制作落地有声的瓶子
  • 让画卷打开来:用Flash做转轴效果
  • 用flash制作旋幻时针
  • Flash 5.0的十个“新”得
  • 一个很cool的FLASH水波制作
  • 相关软件

  • FlashPac C 开发程序库  
  • Flash5 螺旋图形这是利用 Flas  
  • Flash5 碰壁小球本来用 Flash  
  • 这是 Flash 5 Action Sc  
  • Flash5 图片角度变换这个程序的代码  
  • 到了 Flash 5,精确下载  
  • 21个透明flash文件  
  • 17个透明FLASH  
  • 60个透明FLASH  
  • 40个韩国flash源文件  



  • 月光软件源码下载编程文档电脑教程网站优化网址导航网络文学游戏天地生活休闲写作范文安妮宝贝站内搜索
    电脑技术编程开发网络专区谈天说地情感世界游戏元素分类游戏热门游戏体育运动手机专区业余爱好影视沙龙
    音乐天地数码广场教育园地科学大观古今纵横谈股论金人文艺术医学保健动漫图酷二手专区地方风情各行各业

    月光软件站·版权所有