當前位置:首頁 > 建站指南
啟凡網絡:Flex應用程序的性能優化的10點建議?

網責任編輯:啟凡軟件   閱讀量: 發表時間:2011-01-29 15:01:47

眾所周知,flex應用程序存或多或少地存在性能方面的問題。特別是企業級大數量的應用程序,通常的解決辦法是分模塊加載,分時加載數據等措施來解決。下面我們來談一談代碼級別的優化:

1.盡可能減少程序的不必要運算。如下兩種表達式:

var a:unit = b+(1024-200)/2;   
var a:unit = b+412; 
很明顯下面的那個表達式運算更快。

2.盡可能地采用乘法運算來代替除法運算。如下兩個表達式:

result = num / 4;   
reuslt = num * 0.25;
經過統計工具計算,乘法比除法能節約150ms的時間。

3.盡可能使用強類型。比如:

var pt:Object = {x:x,y:y};   
var pt:Point = new Point(x,y); 

4.使用隱式類型轉換。比如,

var pt:Point = points[i] as Point;   
var pt:Point = points[i]; 
第二個的表達式使用的隱式類型轉換,這樣能節省開銷。

5.強制轉換有時要比用as轉換好用。如:

pt = points[(i*2) as unit];   
pt = points[uint(i*2)]; 

6.設置條件表達式的優先級。如:

if(expensiveTest() && usuallyFalse)   
if(usuallyFalse && expensiveTest())
在與運算時,應將在多數情況下為false的表達式放在前面(如第二個表達式的寫法)。

7.for循環語句中的循環條件值應為一個固定值。如:

for (var i=0; i<arr.length; i++)   
for (var i=0; i<l; i++) 
應采用第二種寫法,將arr的length屬性值存放到一個變量中去。

8.回調事件要比單獨派發的事件要快,更比冒泡的事件快。

9.盡量減少使用try...catch來拋出異常信息。如:

try {isNull.x = 3;} catch(e:*) {}   
if(isNull) {isNull.x = 3;} 
多采用第二種方法,來減少異常。

10.使用removeEventListener方法來清除閑置的事件偵聽者。

啟凡軟件完美的策劃方案能夠讓您的網站在同行間異軍突起,讓你的產品更快速、最大價值化的銷售出去

讓你的網站上線一個月就排在百度首頁

LET YOUR WEB SITE ON-LIFE FOR A MONTH ON THE BAIDU HOME PAGE

© 2017 ALL RIGHTS RESERVED 豫ICP備11009532號

李逵劈鱼游戏破解 时时免费软件下载 福彩3d独胆王预测专家 全年无错尾数中特 黑龙江时时号码结果 韩国首尔快三走势图 江苏时时计划软件 排列三最实用的方法 广东快乐十分时时彩网 湖北快三跨度走势图 内河五分彩是官方开奖吗 我要注册重庆时时 1分赛车开奖走势图 上海快三基本走势和值 天空彩票与你同行挂牌全篇 超级太乐透走势图新浪 内蒙古时时单式