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
相关文档:
1、mian.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" creationComplete="HTTPSrv.send();" width="242" height="442">
<mx:Script>
<!--[CDATA[
import mx.rpc.events.ResultEv ......
详细介绍Flex中操作XML(上)
2009年12月30日 星期三 12:05
一 在介绍Flex中操作XML之前,首先简单介绍下XML中的基本术语。
元素:XML中拥有开始标签和结束标签的这一块称为“元素”
节点:把XML元素与文本结合起来统称为节点
根节点:位于整个XML文 ......
在flex中,一般直接在设计时写remoteobject的话,这个是比较普遍了,但有的时候,需要在AS代码中动态设置
remoteobject,这个比较少见,所以小结学习之:
情景是,当页面加载时,代码新建立一个remoteobject,然后设置其方法和调用参数,最后把调用返回的结果(是JAVA中的一个LIST),绑定到
一个repeater控 ......
估计不少做Flex的初学者和我一样,寻找让Flex背景图片平铺显示方法。
但现在我要告诉你的是Flex本身没有提供这种方法,至少在Flex3上是没有提供的。
所以就要自己写代码来实现这种效果,其实很简单的。
下面是我在网上找到的一个方法,然后自己做了一点小小的修改。
并做一个简单的例子放上来,你可以点这里下载。
......
测试其实没有太多的可比较性,我主要想比较相互之间对数据访问的速度和数据传输大小的比较,Flex的性能上出乎我的意料之外
我采用的是Flex直接访问Java服务,和Silverlight 访问webservice
从同样的SQL语句得到的数据大小看,flex读取数据流量的比silverlight小5倍,原因是flex访问数据时对数据进行了压缩
从显示数据的性 ......