`
ch19880311
  • 浏览: 27259 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Flex性能总结

    博客分类:
  • Flex
阅读更多
1、使用强类型变量??
如:var crtPiece:int = movesArray[i].piece; 可以写成var crtMove:Move = movesArray[i]; var crtPiece:int = crtMove.piece;
如:var element:int = matrix[i][j];  可写成var row:Array = matrix[i];
var element:int = row[j];
但是本人测试过,存在疑问,发现前者比后者性能好,不知道什么原因,请看我的测试代码:
var b:String;
var d:Number = 0;
var time:int;
var e:Number = 0;
var f:Number = 0;
var a:Array = [];
var person:PersonVO;//可以自己实现一个PersonVO
var personTemp:PersonVO;
var i:int = 0;
var j:int = 0;
for (i=0; i<500000; i++)
{
person = new PersonVO();
person.ID = i;
person.name = "name"+i
a[i]=person;
}
var predate:Date = new Date();
trace(predate);
d = predate.valueOf();
time=getTimer();
trace(time);
for(i = 0; i < 500000; i++){
b = a[i].name;
}
predate = new Date();
trace(predate);
e = predate.valueOf()-d;
d = predate.valueOf();			
for(i = 0; i < 500000; i++){
personTemp = a[i];
b=personTemp.name;
}
predate = new Date();
trace(predate);
f=predate.valueOf()-d;
trace(e,f);

2、Math函数是比较耗时的,简单的功能可以尽量自己实现
var x:int = Math.min(a,b)可写成var x:int = (a<b) ? a : b;
3、位操作, 乘法和除法操作之间的性能比较
我们需要理解一种概念,任何代码到最后都会转化为机器语言来执行,所以应该不难理解位操作的性能比其他任何计算都快,只是它比较难读懂而已。
var x:int = a/2;性能低于var x:int = a*0.5;性能低于var x:int = a >> 1; //2^1 = 2;
if (n % x == 0)性能低于if (n & (x-1) == 0)
4、把复杂的条件表达式分解成各个独立的结构
while(--i > -1){if (a == 1 && b == 2 && c == 3 && d == 4){var k = d * c * b * a;}}

可写成如下形式:
while(--i > -1){if (a == 1){if (b == 2){  if (c == 3)   {    if (d == 4)    {var k = d * c * b * a;} }}}} 

5、可以使用[]来创建一个Array实例
var a = new Array(); 可写成 var a = [];
6、减少容器的嵌套
7、用HBox and Vbox来代替Grid.
8、一个MXML组件的根并不需要是一个容器。
2
1
分享到:
评论
2 楼 ch19880311 2012-07-18  
strugglesMen 写道
Polygon是flex的扩展类,是用来在flash版 google 地图上画多边形,他好像不是uicomponent组件,那他

为什么有图形界面呢,怎样重写能让Polygon具有effect效果呢?

Polygon继承关系
http://alt.coxnewsweb.com/ajc/swf/_2010_Flash/MapsTest/sdk/docs/com/google/maps/overlays/Polyg

on.html

Polygon详细介绍
http://code.google.com/intl/zh-CN/apis/maps/documentation/flash/reference.html#Polygon


Polygon是折现类并不继承flex的uicomponent,
而Flex的uicomponent已经是一个比较成形的图形组件了,它最终也是实现flash.events.IEventDispatcher,Polygon之所以能画多边形,可能他通过实现鼠标事件调用google maps类中自己的图形类来画折线。
Flex中的所有特效都是继承Effect类,而Effect类继承关系如下:http://livedocs.adobe.com/flex/3_cn/langref/mx/effects/Effect.html
如果想要Polygon有特效,需要实现IEffect接口。
1 楼 strugglesMen 2011-05-04  
Polygon是flex的扩展类,是用来在flash版 google 地图上画多边形,他好像不是uicomponent组件,那他

为什么有图形界面呢,怎样重写能让Polygon具有effect效果呢?

Polygon继承关系
http://alt.coxnewsweb.com/ajc/swf/_2010_Flash/MapsTest/sdk/docs/com/google/maps/overlays/Polyg

on.html

Polygon详细介绍
http://code.google.com/intl/zh-CN/apis/maps/documentation/flash/reference.html#Polygon

相关推荐

    flex学习笔记 flex学习总结 flex学习教程

    9. **Flex性能优化**:学习如何通过优化组件使用、减少网络请求、缓存策略等方式提升Flex应用的性能。 10. **实践项目**:理论学习后,通过实际项目练习,将所学知识应用于实践中,是巩固和提高技能的最佳方式。 ...

    Flex 性能简介.pdf

    ### Flex性能简介:Flex与JavaServer Pages (JSP) 应用程序的比较 #### 引言 随着互联网技术的发展,用户体验与服务器性能成为衡量Web应用程序的重要指标。本篇文章基于一份名为“Flex 性能简介”的PDF文档内容,...

    FLEX技术总结20110414

    Flex技术是Adobe公司推出的一种基于ActionScript和Flash Player运行时的富互联网应用程序(RIA...通过学习这份总结,你可以了解当时的Flex如何帮助开发者构建高性能、互动性强的Web应用,并为未来的技术选择提供参考。

    flex测试总结

    标题中的“flex测试总结”指的是Flex测试,这是一种针对Adobe Flex应用程序进行的质量保证过程。Flex是一种开源框架,用于构建富互联网应用程序(RIA),它基于ActionScript编程语言和Flash Player或Adobe AIR运行时...

    FLEX技术总结20110413

    8. Flex与服务器通信:Flex应用程序通常使用AMF(Action Message Format)进行与后端服务器的数据交换,AMF是一种高效的二进制序列化格式,用于提升Web服务的性能。 9. 2011年的应用场景:在2011年,Flex广泛应用于...

    flex socket开发总结

    Flex Socket开发总结 在开发基于Flex的应用程序时,与服务器进行实时通信是常见的需求,而Socket接口提供了这种能力。本文将深入探讨Flex中Socket开发的关键知识点,包括如何连接到Java和C++的Server Socket,以及...

    FLEX技术总结20110414(1)

    6. **集成开发环境**:Adobe Flex Builder(后更名为Flash Builder)为Flex开发提供了强大的IDE,集成了调试、测试和性能分析等功能。 在实际开发中,Flex常用于构建企业级应用,如数据可视化工具、在线报表系统、...

    Flex4.5常见问题总结

    ### Flex4.5常见问题总结 #### 一、Flex4.5组件开发模型与特性 Flex4.5采用了一种基于组件的开发模型,开发者可以通过继承现有组件并扩展其功能来构建自己的应用程序。这一模型的核心优势在于提高了代码的复用性,...

    flex_与JSP性能比较分析

    ### Flex与JSP性能比较分析 #### 一、引言 随着互联网技术的快速发展,Web应用程序的用户体验变得越来越重要。为了提升用户体验同时保持良好的服务器性能,开发者常常需要在不同的技术栈间做出选择。本报告主要...

    避免Flex RSL重复load 提高module加载性能的swc

    总结来说,避免Flex RSL重复加载的关键在于合理使用SWC进行模块化开发,通过预加载策略和多模块架构优化加载性能。通过这些方法,可以有效地减少网络传输的负担,提高应用程序的启动速度和整体运行效率,为用户提供...

Global site tag (gtag.js) - Google Analytics