日期:2013-11-25  浏览次数:20656 次

  从Flash5.0 Flash有了比较完善的程序文语。这绝对是反动性的进步。AS1.0让我们跟着她开始呀呀学语,开始明白用as可以控制SWF的内部流转。尔后,AS2.0渐趋完善,同时他也开始不满足与控制player内部的操作,在加强了与JS的通信后,Flash在网络编程领域也强势起来。

  无疑,这样的进步让我们这些喜欢编写点程序的人喜上眉梢。记得1年以前Flash8将要发布的时候,AS能有什么更让人兴奋的进步是我最期望的事。然而,Flash8迎来了滤镜、过渡特效、摄像头捕捉....但是没有迎来AS的大变化。这包括,臃肿的V2组件,薄弱的Debug,差劲的智能感知。不能不说有点失望。

  组件是Ria开发的常用零件。V2组件的绑定功用对Coldfusion的Web服务来说还算是简单,当与.net的webserver通信时就非常麻烦,其中最次要的就是数据类型的不婚配。同时,as2.0对soap的反序列做的也不好,(在本人看来)好像没有预定义什么函数。还有,v2组件的功用表现不是很让人满意。在‘Flash8 DataGrid组件功用测试 ’里我做了一个测试,可以看出,作为数据显示的重要元素的DataGrid,当数据添加超过1000条时给客户端添加很大压力。 document.title="Flash8 DataGrid组件功用测试 - "+document.title

  另一个问题,Flash不断没有提供比较完善的Debug工具,绝对与VS.net的调试环境更是如此。另外,由于Flash处理的次要是网络的异步操作,对于互换来说这就愈加的重要了。

  第三,我不太明白As的编译原理。常常我们会创建一个class.as的类文件,通过命名空间在swf文件内实例化他们。当Class增多,而且在Flash架构中出现文件互相调用的情况时,事情就复杂了。依据我的经验,对其中的Class添加属性或方法函数,绝对是痛苦的事。由于你必须将所有用到这个Class的swf重新编译,一旦忘记了哪一个就会出现意想不到的错误。常常,发现这样的错误需求几个小时的时间。

   还好,Flash为RIA的网络开发提供了,诊听和委托机制(方便处理异步操作)、xml类(包括socket)、本地共享对象(比Cookie强多了,方便在线与离线的无缝转换)、定义类的接口(让言语更规范)。这都是她的优势,我认为。

     发了不少牢骚。不过绝对与AJAX的开发,Flash还是敌对很多的。呵呵,也许一切都不会是完满的。还好,AS3.0就要出来了。希望对于Flash程序员,这是一次新的开始。