BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / flash / #29846同步于 2007/12/2
Flash机器人发帖

[技术]flash及其相关技术,希望大家能看一看

xw2423
2007/12/2镜像同步0 回复
序言 第一次写这么长的文章,对于这么大一个题目我也不好把握,关于flash的很多东西我也没有研究过,比如flash lite,下面内容基本上属于自己的感悟,一下关键的地方都标明了参考文档,以便大家能了解更多。本人技术水平有限,文章里难免有不足或错误的方法希望大家,多多指正。 这篇文章包括一下几个部分 历史回顾 Flash的IDE AS(Actionscript) Flash Remoting FMS(Flash Media Server) Flex 关于Flash的学习 关于Flash版的发展(即使你不看其他的部分,但希望你务必阅读此部分 一些资源 <=======================分割线================================================> 历史回顾(来自于百度百科): FutureSplash Animator (1995) - Flash的前身,由简单的工具和时间线组成 Macromedia Flash 1 (1996-11) - Macromedia给FutureSplash Animator更名后为Flash的第一个版本 Macromedia Flash 2 (1997-6) - 引入库的概念 Macromedia Flash 3 (1998-5-31) - 影片剪辑,Javascript插件,透明度和独立播放器 Macromedia Flash 4 (1999-6-15) - 变量,文本输入框,增强的Actionscript,流媒体MP3 Macromedia Flash 5 (2000-8-24) - Javascript, 智能剪辑, HTML文本格式 Macromedia Flash MX (2002-3-15) - Unicode,组件,XML,流媒体视频编码 Macromedia Flash MX 2004 (2003-9-10) - 文本抗锯齿,Actionscript 2.0,增强的流媒体视频,行为 Macromedia Flash MX 2004 Pro (2003-9-10) - 包括所有Flash MX 2004的特性,加上Web Services, ActionScript 2.0的面向对象编程,媒体播放组件 Macromedia Flash 8 (2005-9-13) Macromedia Flash 8 Pro (2005-9-13) 增强为移动设备开发的功能,方便创建Flash Web,增强的网络视频 Adobe Flash 9 (2006) Adobe Flash Pro 9 (2006) Flash的IDE 简单的说一下,我最早用的是flash5。对于前面的版本我也体验过,大家看到上面的列表也可以大概了解它的发展进度。当初我用flash5是也只是摸索着学一点简单的概念(不涉及到代码),就像每一个初学者那样知道了什么是图层,什么是帧,什么是最简单动画,还有有引导线,遮罩之类的功能,对于每个初学者来说flash的IDE环境肯定要接触的,flash的本意就是使通过简单的操作能让每个人都能做出自己想要的动画,当然它的功能也随着版本的提高变得越来越强大,后来flash支持的东西越来越多,包括更多种类的图片(包括psd),视频,虑镜,还有一些预置的动画模式。在今后的发展中flash还将支持3d的关节动画,以及更简单的视频处理功能。相信这些功能的完善可以让那些专注于美术方面的人们有更多更好的发展空间。 AS(Actionscript) 说到flash就不可能不提Actionscript,AS是flash的脚本语言,从他诞生以来就注定有着举足轻重的作用,虽然靠IDE我们已经可以做出很好的动画了,但AS的使得flash应用到了更广泛的地方。AS到现在已经有三个版本了,它的发展真的让人越来越兴奋了。 AS1:AS1的出现使得flash不再单靠IDE来组织动画,他有简单的事件响应,影片流程控制,这让flash做交互成为了可能。可惜我也没用过AS1,也不好发表更多的评论 AS2:AS2可以算是统治了flash编程界很多年,即使现在AS3的出现了,但AS2的影响还是根深蒂固的,他与AS3应该还要并存一个很长的时间,尽管在现在看来AS2有很多的缺陷,但是相比较AS1来说,它有着飞跃性的进步。AS2里有了“类”,支持as2.0的面向对象编程,它新增了socket,xml,video,system,sharedobject,stage。。。。。这些“类”让我们对影片的操控更加自如,flash也通过这些类扩展了他的对外接口,于是flash出现了另外一条出路,flash编程(flash应用程序开发)。还值得一提的是as2.0的组件,随着flash的发展,组件化是必然的趋势,对于as2.0的组件,flash有了完整的事件模型体系,对于一些组件还拥有数据绑定的功能,这样可以更简单的处理xml。 AS3:AS3是一个让人兴奋的东西。基于ECMAScript,使他变得更为标准。他属于Adobe提出的RIA解决方案的一部分,在运行AS3上flash用了新的虚拟机,保证了其运行效率。它是真正的面向对象的语言,这点很像java,而且它也是开源的。它的核心代码都重新构建,与AS2完全不同,所以也不存在AS2的那些bug(比如this的指向问题,而且AS2最终还是编译为AS1),更多有关AS3的介绍可以看http://www.51as.com/as3/2007-7-28/as3-GaiYaoJiaoCheng.html Flash Remoting Flash其实有个很大的弱点,就是与外界通信的能力,AS2中提供了Socket,loadVariables,AS3中出现了URLRequest,但这并不能改变这种现状。Flash Remoting的出现就是为了解决这个问题。说白了Flash Remoting就是一个类似网关的东西,他完成了Flash的数据格式与服务器脚本语言的数据格式的转换,Flash可以直接远程调用(RPC)已有的服务器端服务,从而明确了服务器端开发人员、客户端开发人员和客户端设计师人之间分工,有利于团队开发。现在官方提供了Flash Remoting for J2EE和Flash Remoting for .net的版本,在一些开源社区也出现了for php的版本,如果大家对这方面有兴趣可以查阅更多的资料。 FMS(Flash Media Server) 它的前身是FCS(Flash Communication Server),可惜我也没有研究过这方面的技术,从名字上看,很显然是flash提供的媒体服务器,像现在很多基于flv格式的视频网站就用到了这方面的技术,没用过不敢多说,可以去文章最后面我提供的一些网站和论坛看看,里面都会有很详细的介绍。 Flex 还是提一下这个吧,Flex现在应该为更多的人所知了,它是Adobe提示出的RIA(Rich In Application)的解决方案(什么是RIA,参见http://baike.baidu.com/view/706341.html?wtp=tt)。它专注于B/S架构上的应用程序开发,它用的是基于xml的MXML的语言,flex也是面向对象语言,也是开源的,可以看看它的language reference,很强大并且包括了AS3的所有内容。对于Adobe来说,flex也是他在RIA上能够抗衡MS的WPF的强大工具。 关于Flash的学习 说一点自己的感受,很多人都把flash的开发(暂且这么说吧)分为两类:偏向动画,偏向编程。我并不否认这种观点,如果对于你来说flash是一个制作动画的工具,或者说你只想做出Flash的MV,动画(像大话三国,小小)那样的东西,那真的是考验你的美术功底和动画功底,可以说里面并不包含很多代码。flash只是一个轻量级的动画制作软件罢了。其实越精细的动画越是逐帧的产品。我还是很羡慕那些会美术的同学的,他们做出的动画的确很好看^_^ 再说说编程这方面吧,可以说上面提到的技术几乎都与coding有关,flash在应用程序(B/S下的)的开发(包括flash web的开发)越来越强势,flex更是提供了一个很好的平台。对于一个初学者来说,如果你不了解AS1和AS2在现在看来也许真是件好事,因为AS3的出现几乎可以抛弃原来的两个版本,直接去接触AS3吧,它才是发展趋势。 一些书籍: 对于flash IDE的基本使用很多书都有介绍,个人推荐《Flash第一步-基础篇》虽然没看过他的编程篇感觉不错。 《Flash第一步-ActionScript编程篇》 作者:陈冰 中国人写的一本比较好的介绍AS2.0的书 《Flash MX 2004与RIA应用程序开发》 作者:台湾闪客颜金×(不会打) 也是AS2.0的东西,介绍技术比较全面 《Flash For Java》 作者不记得了,由于自身原因选了这本书,里面关于Flash Remoting for J2EE介绍的很好 《Flash MX编程与创意的实现》 这是中文翻译的版本,原著是Robert Penner的《Programming Macromedia Flash MX》里面将的东西很精彩,可以借鉴里面的思路 《Make Things Move!》 两个字:经典 《Advanced.ActionScript.3.with.Design.Patterns》 AS3的设计模式,很有意思 《AS3_cookbook》《Essential.ActionScript.3.0》两本O'Reilly的学习AS3的利器 《Adobe.Flex.2.Training.from.the.Source》 手把手教你flex 另外就是各种技术的language reference和help这些肯定要熟悉的。 有关flash web的开发可以参阅http://www.blueidea.com/tech/multimedia/2007/4669_2.asp 关于Flash版的发展 最后说这个,看了上个月的巡查报告,报告里点名指出flash版技术氛围不够,这我也相当的认同,无奈flash版处于休闲娱乐区,无形中就给其扣上了一顶帽子。游戏充斥,不争的事实,之前问过dickfu,据说以前这个版还是有技术探讨的氛围的,可是后来就沦陷了,呵呵。说说我自己的意见吧,我个人并不是反对flash游戏,但现状是游戏充斥没有其他的东西,我自己也写过flash的游戏(连连看那个,精华区能找到)如果大家能讨论一下flash游戏的制作,我看也是很好。我是因为热爱flash及其技术才来到这里做BM,相信学校里对flash及其技术有兴趣的同学也不是少数,很希望大家能到这里来探讨。可以看看本版的版规,我们一向很欢迎技术的探讨,我们也会尽力的解答各种问题。 恩。。。当然喜欢flash游戏的同学也可以来我们版休闲娱乐,好的游戏我也会m的,希望大家在flash版上既能学到知识又能享受快乐,就说这么多了。 一些资源: http://www.blueidea.com/tech/multimedia/index.asp 蓝色理想 http://www.flash8.net 闪吧 http://http://www.flashempire.com/ 闪客帝国 上面三个站点也算中国flas方面很大的站点了,里面都有flash的教程,而且更新的很快,大家可以关注上面三个站点的论坛,里面技术的氛围很浓厚。 http://www.riachina.com/ RIACHINA 中国RIA开发者论坛。顾名思义,这里面除了有flash,flex相关的技术,还有有关RIA的其他技术,像WPF,Laszlo。还有客户体验的相关讨论。 http://www.sinker.cn/index.shtml flash片头之家 http://hi.baidu.com/ustbylb/blog/item/0fba3712ce585250f919b877.html 这是一个人blog,里面包含了很多Flex Explorer,有助于你学习flex,不过很多都是外网。 FTP:本想传一点东西到ftp上,发现ftp已经到上线了,不能上传了。一些AS3和flex的教程,见下图,想要的可以站内,然后传给你。
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。