易截截图软件、单文件、免安装、纯绿色、仅160KB

ActionScript 3 和 Flex框架的性能优化

几日前被老总推荐文章一篇,来自7yue兄的blog,作者是Sean Moore ,
原文地址:http://www.insideria.com/2009/04/51-actionscript-30-and-flex-op.html
与其在程序写完了之后臃肿得跑不动,不如平时注意这些关键点,时时提醒自己。翻译出来,以便以后时时查阅。
1 创建新数组时避免使用它的构造函数。
   这样做:var a = []; 
   而不要这样做:var a = new Array();
2 创建数组是一个消耗量很大的操作,所以请谨慎进行以下类型的操作:
  var vanityCollection01 : Array = new Array(); 
  var vanityCollection02 : Array = new Array(); 
  var vanityCollection03 : Array = new Array(); 
  var vanityCollection04 : Array = new Array();
3 复制一个数组最快的方式是:
  
  var copy : Array = sourceArray.concat(); 
4 无论你用哪种方式,为数组的元素设置值都是一个慢的操作。
  employees.push( employee ); 
  employees[2] = employee; 
5 在数组中获得一个值的速度是设置一个值的二倍。
  var employee : Employee = employees[2];
6 将属性函数设置为静态函数,这样你在使用它的时候就不用实例化一个该类的对象。
  StringUtils.trim( "text with space at end " ); 
  类定义: 
  package 
  { 
     public final class StringUtils 
         { 
          public static function trim( s : String ) : String 
          { 
               var trimmed : String; 
               // 逻辑实现代码 
               return trimmed; 
           } 
      } 
  } 
7 使用常量关键字const来定义那些在程序运行周期内都不会发生值改变的属性。
  public const APPLICATION_PUBLISHER : String = "Comp


相关文档:

Flex DataGrid渲染图片

初学flex,遇到一个问题‘在datagrid的一列中利用它的值转换显示不同的图片’,在网上搜了搜问了问,解决了哎,解决办法贴出来,希望对其他人有帮助,
利用datagrid的labelFunction解决的,如下:
在datagrid的
<mx:DataGridColumn  dataField="level"  labelFunction="formatiImg"/>
/* ......

Flex 开发注意事项1

cimmicola能否讲讲flex开发经验(轉貼)应该清楚Flex是完全编译成swf文件后交由客户端浏览器中的Flash player来执行的。而不像传统web语言,经由服务端进行解释后转化为纯html元素和脚本。
这样来说,一个纯Flex应用(主要是指企业级开发,有很多功能和业务流程的那种)编译之后的体积,基本上是不能在互联网上 ......

我对flex与Silverlight的性能比较

测试其实没有太多的可比较性,我主要想比较相互之间对数据访问的速度和数据传输大小的比较,Flex的性能上出乎我的意料之外
我采用的是Flex直接访问Java服务,和Silverlight 访问webservice
从同样的SQL语句得到的数据大小看,flex读取数据流量的比silverlight小5倍,原因是flex访问数据时对数据进行了压缩
从显示数据的性 ......

flex amf

AMF是Adobe独家开发出来的通信协议,它采用二进制压缩,序列化、反序列化、传输数据,从而为Flash 播放器与Flash Remoting网关通信提供了一种轻量级的、高效能的通信方式。如下图所示:

AMF(Action Message Format)是一种 binary format的资料型态,透过 AMF overHTTP的方式将flash端资料编码后传回server,server端的 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号