论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > Flash AS编程教程
Tag:2.0,3.0菜鸟,游戏,,cs,技巧,源码,,文本,文字,函数,音乐,随机,拖拽,asp,access,xml,mc,视频教程

flash 高级编程指南 (二)

文章类别:Flash AS编程 | 发表日期:2008-10-6 18:06:33


    XMLConnector是最简单的一种连接器,服务器端可以是任何语言的脚本,ASP,PHP,JSP等都可以,它的好处是服务器程序不需要加载额外的库,只要你返回的内容是XML的就可以了。这样实际上方便了程序员用最少的成本将原有的服务器端脚本稍作更新,以配合Flash富客户端。它的坏处在于,这样的脚本使前后台程序员之间的配合比较困难,因为它的接口是隐藏的,因为如果你不能和脚本开发人员密切沟通,你对接口和参数的信息就一无所知,至少不全面,甚至不知道其中是否有后门。但如果你既开发前台又开发后台另当别论,另外很多习惯于传统的Web服务器脚本开发的人员也可以比较快的上手。

    我们跳过WebServiceConnector,讲讲RemotingConnector,这个连接器基于Flash Remoting 技术,有不少的朋友很热衷于Remoting技术,但我并不是很看好它。应该说Remoting 技术的设计思想和Flash的SWF文件格式的设计思想是一脉相承的。它们都极力的强调带宽的重要,对于在Internet上传输的内容要尽量的精简,压缩。因为前一阵子,我曾经想开发一个J2ME版的Flash Player,所以我对SWF格式做过比较深入的研究,它在压缩方面做的相当到位,每一个bit都尽量利用,Remoting也是希望通过二进制字节流减少传输量来提高效率,所以我说它们的出发点是一样的。Remoting在本质上属于RPC的一种,它和DCOM,CORBA,JAVA RMI属于一类的技术,不同之处在于Remoting 的通讯协议采用HTTP,这样它就具备了WebService这样的跨越多个域,跨越防火墙的功能。在效率上Remoting毋庸置疑要高于WebService,但这不是我们取舍一个技术的决定因素,要不然,DCOM,CORBA这些东西的性能更强悍,但他们在Web时代却得不到广泛的使用。另外,Remoting是Macromedia的“私有财产”,MM拥有绝对的主动权对它进行修改和扩充,就像MM对Flash格式和AS进行大刀阔斧的改革一样,开发人员是很忌讳这种事情的。虽然MM公开了Remoting AMF通讯协议的大部分内容,但它实际上故意对媒体流的传输协议秘而不宣。很多人热衷Remoting很大程度上受了MM那个视频聊天DEMO的诱惑,而实际上为了要视频聊天,你需要付出惨重的代价,首先服务器必须用MM的软件,因为没有第三方知道怎么和Flash客户端交流媒体流,而MM的服务器软件按照connection收钱,贵的吓死你,用盗版另当别论。基于以上原因,我个人比较不赞成使用Remoting.

    WebServiceConnector我放在最后讲。这是目前最有前途的RPC技术,有人说WebService 是个很糟糕的技术,因为Microsoft的极力推广才有它的今天。我对此不以为然,抛开对Microsoft的成见,它所推出的技术一般都相当成功,就像现在的.NET, C#,作为一个程序员,我只能用艺术品来形容它们。WebService 也许不是一个最完美的技术,但在当下,它最适合Web分布式计算。时至今日,它已经越来越成熟,而且在很多世界级的大型项目中得到了应用和考验。一个技术它被应用的越广泛,其价值也就水涨船高,它带来的一个显著的好处在于,你可以不用被绑死在一个开发平台上,无论是服务器端还是客户端,比如如果有一天你的客户要求你用SVG或者Java Applet开发客户端,因为你在服务器端采用了WebService,就可以很快的跨越到另一个客户端技术。不要以为这种情况不太会发生,实际上如果你看过SVG 2的技术文档,你就会发现Flash有一天很可能会被它取而代之,它真的很强大,也很适合开发富客户端应用程序,这时候你的服务器脚本如果采用了Remoting 技术,你可惨大了。再者,从开发环境而言,象VisualStudio.NET,WebSphere,JBuilder 等都对WebService提供了相当好的开发和调试环境。相对于XMLConnector,WebServiceConnector的优点还在于允许你在设计时(DesignTime)绑定(Binding)它的参数(Paremeters )和结果(Results)。比如你可以绑定你的复选框(CheckBox)到WebService的一个参数上,复选框里的选择内容被改变时,WebService被触发(Trigger),WebService连接服务器从数据库中取回新的数据更新DataSet,然后DataSet又更新和它邦定的其他组件,你看一个Master-Detail结构的数据库应用程序就这么简简单单的生成了,这个过程你真正要动手编的程序可能只有3,4而已。

    总结:如果服务器端允许,你也具备一定的WebService编程经验,最好采用WebServiceConnector。尽量避免使用Flash Remoting。XMLConnector的使用取决于你项目的具体情况,比如规模,开发模式,是否需要重用大量的已有脚本等。
视频教程列表
文章教程搜索
 
Flash AS推荐教程
Flash AS热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058