自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

專家提醒 小心掉進(jìn)Flex應(yīng)用的誤區(qū)

開發(fā) 后端
Flex應(yīng)用的誤區(qū)是不被大多數(shù)人知道的東西,這里和大家簡(jiǎn)單分享一下,希望通過本文的學(xué)習(xí)你能夠避免出現(xiàn)類似的錯(cuò)誤。

本文和大家重點(diǎn)討論一下Flex應(yīng)用的十大誤區(qū),沒有搭建企業(yè)生態(tài)系統(tǒng)就像其他的軟件項(xiàng)目一樣,為了你的Flex應(yīng)用建立企業(yè)生態(tài)系統(tǒng)是非常重要的。

Flex應(yīng)用的十大誤區(qū)

1.使用RIA框架去構(gòu)建Web1.0應(yīng)用(新技術(shù)換湯不換藥)。從Web1.0到RIA的過渡中***的挑戰(zhàn)之一來自思考方式的轉(zhuǎn)變。Flex給予開發(fā)者一個(gè)高級(jí)的組件庫(kù),使其可以完成很多以前不可能完成的任務(wù)。但是很多時(shí)候,F(xiàn)lex的這種能力被忽略了,它僅僅被用來實(shí)現(xiàn)更加傳統(tǒng)的Web1.0應(yīng)用。構(gòu)建Web2.0應(yīng)用不僅僅意味著頁面的局部刷新和旋轉(zhuǎn)的圓角圖標(biāo)。例如,F(xiàn)lex開發(fā)者應(yīng)使用矢量圖向用戶提供數(shù)據(jù)的可視化表示,以及對(duì)于富應(yīng)用流的高級(jí)控制。最近StephanJanssen:作為一個(gè)Java開發(fā)者,對(duì)于面向?qū)ο蟮腁ctionScript和UI標(biāo)記語言的學(xué)習(xí)簡(jiǎn)直就是小菜一碟。但是對(duì)于(Java)開發(fā)者來說真正的挑戰(zhàn)在于我們不是設(shè)計(jì)師,并且這兩個(gè)技術(shù)對(duì)于RIA來說是必不可少的。

2.破壞標(biāo)準(zhǔn)的瀏覽器體驗(yàn)盡管Flex確實(shí)提供了一個(gè)優(yōu)秀的平臺(tái)以改善用戶體驗(yàn),但是保持用戶習(xí)慣,如后退按鈕、書簽和自動(dòng)完成也是相當(dāng)重要的。Flex3包含了新的深層鏈接特性以支持后退按鈕和書簽。你可以訪問來了解更多。那有很多組件能夠?qū)崿F(xiàn)自動(dòng)完成。你可以使用來自于AdobeExchange的組件。

3.使用過多的容器導(dǎo)致Flex應(yīng)用變慢FlashPlayer使用了一個(gè)按層次顯示的對(duì)象圖,這一點(diǎn)與HTML的文檔對(duì)象模型(DOM)很相似。容器嵌套的層次越深,渲染所花費(fèi)的時(shí)間就越長(zhǎng)。Adobe的Flex開發(fā)者中心有一篇文章討論了關(guān)于Flex性能的***實(shí)踐,包括了容器的使用細(xì)節(jié):Flex***的性能風(fēng)險(xiǎn)來自于對(duì)容器的濫用。嵌套太多的容器會(huì)影響應(yīng)用的性能。這是Flex開發(fā)者面臨的最嚴(yán)重的性能風(fēng)險(xiǎn)——不過還好,它完全能被避免。

4.使用XML而不是其他更優(yōu)化的協(xié)議導(dǎo)致應(yīng)用變慢Flex向開發(fā)者提供了多種選擇以在Flex客戶端和服務(wù)器之間進(jìn)行數(shù)據(jù)傳輸,包括AMF3、XML、SOAP及直接的HTTP請(qǐng)求。Ward在他的中闡述了這些技術(shù)的使用及性能。對(duì)于后端使用Java的新項(xiàng)目來說,應(yīng)該考慮一下BlazeDS。BlazeDS是,它使用了AMF3協(xié)議。AMF是一個(gè)二進(jìn)制傳輸協(xié)議,很容易與Java集成,其性能要優(yōu)于XML。對(duì)于所有主要的后端技術(shù)都有相應(yīng)的AMF開源實(shí)現(xiàn)。如果你不選擇BlazeDS,那么你還可以選擇Hessian。對(duì)二進(jìn)制的webservices協(xié)議提供了ActionScript/Flex支持。

5.試圖雇傭Flex開發(fā)者現(xiàn)在很難找到有經(jīng)驗(yàn)的Flex開發(fā)者。Flex現(xiàn)在正處在上世紀(jì)90年代Java所處的位置。Flex開發(fā)者已經(jīng)供不應(yīng)求了。這就造成了難以尋覓到有經(jīng)驗(yàn)的Flex開發(fā)者的后果。然而,這給Java開發(fā)者創(chuàng)造了一個(gè)很好的機(jī)會(huì)以擴(kuò)充技能,并且從事一種新興且有趣的技術(shù)。很多尋找Flex開發(fā)者的公司直接對(duì)Java或者其他web開發(fā)者進(jìn)行幾周的Flex培訓(xùn),并且大獲成功。對(duì)于熟悉Web和GUI編程的開發(fā)者來說,學(xué)習(xí)Flex語言和APIs易如反掌。

6.特效的過度使用開發(fā)者可以很容易地通過Flash增加特效。但是要確保特效有意義并且與上下文是匹配的。否則他們只會(huì)讓用戶反感。特效的時(shí)間選擇也很重要。交互設(shè)計(jì)器可以幫助我們決定何時(shí)應(yīng)使用特效,何時(shí)不應(yīng)該使用。交互設(shè)計(jì)器還能為我們推薦***的特效類型、間隔和最簡(jiǎn)化的功能。關(guān)于特效的使用在上有一篇好文:大多數(shù)的特效簡(jiǎn)直太長(zhǎng)了。它們不但長(zhǎng),而且還慢,甚至讓人反感。關(guān)掉它。如果我遇到這種事情的話,我就會(huì)轉(zhuǎn)身離去,因?yàn)槲覍?shí)在討厭這種等待。千萬不要誤會(huì)我,我并不是反對(duì)特效。我只是反對(duì)為了目的而做的太長(zhǎng)或者太過分的特效。每個(gè)特效都可以依照其目的進(jìn)行分解。找到你要特效的目的,然后再使用它。

7.沒有搭建企業(yè)生態(tài)系統(tǒng)就像其他的軟件項(xiàng)目一樣,為了你的Flex應(yīng)用建立企業(yè)生態(tài)系統(tǒng)是非常重要的。測(cè)試驅(qū)動(dòng)開發(fā)(TDD)在當(dāng)前是大多數(shù)企業(yè)項(xiàng)目的***方案。對(duì)于Flex來說,框架可用來編寫單元測(cè)試。在Adobe的開發(fā)者網(wǎng)絡(luò)上,。此外,可用來度量代碼覆蓋率。當(dāng)多個(gè)開發(fā)者協(xié)同工作時(shí),持續(xù)集成()被證明是良好的實(shí)踐。與Java應(yīng)用類似,也有相應(yīng)的Ant和Maven插件對(duì)你的Flex應(yīng)用進(jìn)行持續(xù)集成。

8.沒有使用整個(gè)框架在AdobeFlex中有大量可選的特性,你應(yīng)該考慮在你的Flex應(yīng)用中使用它們。例如,運(yùn)行時(shí)共享庫(kù)(,即RSL)可用來減少應(yīng)用的大小。你可以將共享資源集成到單獨(dú)的文件中,這樣就可以在客戶端單獨(dú)下載和緩存了,通過這種手段可以減少應(yīng)用產(chǎn)生的SWF文件的大小。很多Flex應(yīng)用可以在運(yùn)行時(shí)加載這些共享資源,而每個(gè)客戶端只需下載一次即可。這些共享資源叫做運(yùn)行時(shí)共享庫(kù)(RuntimeSharedLibraries)??蚣艿牧硪粋€(gè)特性是內(nèi)建的輔助功能。你可以通過了解更多的關(guān)于Flex的輔助功能的信息。除了內(nèi)建的輔助功能外,框架還提供了對(duì)于本地化的內(nèi)在支持。請(qǐng)?jiān)L問來了解***的Flex3框架特性。

9.使用復(fù)雜的渲染器降低了DateGrid的速度針對(duì)DataGrid開箱即用的itemRenderer已經(jīng)有過很好的優(yōu)化了。誤解#3討論了嵌套過深的容器的性能問題。在Flex中有一個(gè)地方很容易造成容器的深層次嵌套,那就是DataGrid的item渲染器。由DataGrid所渲染的item渲染器數(shù)量等于可見的行數(shù)乘以可見的列數(shù)。定制的DataGrid和Listitem渲染器應(yīng)該經(jīng)過非常好的優(yōu)化才行。當(dāng)需要在item渲染器中使用復(fù)雜的布局邏輯時(shí),***使用UIComponent(或者其他底層類)并且手工完成該單元格內(nèi)容的定位。

10.沒有準(zhǔn)備離線應(yīng)用。RIAs的傳統(tǒng)模型在于瀏覽器。然而像和這樣的技術(shù)使得應(yīng)用可以離線運(yùn)行。如果用戶需要可以離線對(duì)Flex應(yīng)用時(shí)而你尚未準(zhǔn)備好的話,那將你的應(yīng)用改為支持離線特性將變得異常困難。典型地,在web應(yīng)用中,業(yè)務(wù)邏輯存在于服務(wù)器端。在離線RIAs中,業(yè)務(wù)邏輯必須轉(zhuǎn)到客戶端。為了使應(yīng)用既支持離線,也支持在線,那就很有必要提前決定某些業(yè)務(wù)邏輯的位置。

【編輯推薦】

  1. 全面認(rèn)識(shí)Flex應(yīng)用程序模型
  2. 深入探究Flex應(yīng)用程序使用
  3. 解析Flex事件執(zhí)行流程
  4. FlexBuilder3.0與Eclipse3.4的***結(jié)合
  5. 學(xué)習(xí)筆記 FlexBuilder2.0中如何使用基于Lists的控件 

 

責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-06-29 19:37:43

UML建模誤區(qū)

2010-08-05 09:27:03

Flex應(yīng)用

2010-09-08 16:09:52

DIV+CSS

2010-07-30 14:32:50

Flex應(yīng)用

2009-05-15 14:24:52

2010-07-27 14:17:52

Flex SDK4

2010-07-30 14:43:55

Flex應(yīng)用

2010-08-12 11:12:27

Flex誤區(qū)

2010-11-23 10:50:31

2010-07-28 09:10:41

Flex2.0

2010-08-04 15:55:08

Flex是什么

2011-09-16 11:08:10

IOS應(yīng)用易提醒

2011-06-08 08:38:30

2010-08-03 14:37:30

Flex入門教程

2011-10-25 10:12:49

2012-06-20 10:05:50

2010-08-11 11:31:49

2010-08-12 09:39:26

FlexaddChil

2015-05-21 08:45:18

2016-11-09 10:01:04

軟考備考IT行業(yè)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)