您好,登錄后才能下訂單哦!
這篇文章主要介紹了Flex開發(fā)者需要了解哪些事情,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
Flex開發(fā)者需要知道的10件事
不久前,MichaelPortuesi發(fā)表了一篇博文,談到了Flex開發(fā)者需要知道的10件事。文章介紹了每個進入Flex領(lǐng)域的開發(fā)者都需要掌握的基本知識與技能。MichaelPortuesi給出的10個條目中,有些是開發(fā)者需要了解的簡單細節(jié)信息;有些則揭示了Flash/ActionScript/Flex與其他開發(fā)環(huán)境之間的差別。
如果你了解HTML/CSS并熟悉JavaScript,但卻對ActionScript或Flex一無所知的話,那么應(yīng)該花些時間學(xué)習(xí)一下面向?qū)ο缶幊?,因為ActionScript是一門完全的面向?qū)ο缶幊陶Z言,而Flex則是一個面向?qū)ο蟮目蚣堋?/p>
1.再簡單的東西也是異步的
Flex是一個異步框架,因此我們絕對不能指望代碼調(diào)用后就能立刻執(zhí)行。事實上,我們是無法預(yù)知方法的調(diào)用序列的。
2.搞清楚Flex組件的樣式與屬性
FlexUI組件(按鈕、菜單等等)既有屬性(通過ActionScript語言指定)也有樣式(通過Flex框架指定)。搞清楚他們之間的區(qū)別是非常重要的,因為組件的某些可視化效果可以通過屬性指定,但另一些卻只能通過樣式設(shè)定。通過屬性指定:
button.width=100; button.height=50;
通過樣式指定:
<mx:Style> Button{ color:#cc0000; textRollOverColor:#ccff00; fontFamily:TrebuchetMS; } </mx:Style> <mx:Buttonidmx:Buttonid="setupB"text="ClickMe"click="onSetup()"/>
3.Flex開發(fā)中的樣式與HTML中的不盡相同
可以使用標(biāo)準(zhǔn)的CSS樣式表來為Flex組件添加樣式,也可以在Flex應(yīng)用中包含CSS樣式表。雖然標(biāo)準(zhǔn)CSS使用連字符(例如text-font)格式來定義樣式名稱,但是Flex使用駝峰式的命名格式(例如textFont)。這是因為連字符不能出現(xiàn)在XML的屬性中,所以不能用這樣的名字作為MXML標(biāo)簽的屬性。
當(dāng)然了,如果把樣式定義在外部的CSS文件中或者Style標(biāo)簽中,也可以使用連字符格式的樣式名。此外,F(xiàn)lex還定義了很多HTML中不存在的CSS樣式。
4.盡管看起來不同,但MXML和ActionScript本質(zhì)上是一回事
在Flex中聲明的所有MXML標(biāo)簽都會被Flex編譯器轉(zhuǎn)換為ActionScript代碼;當(dāng)然了,也可以在MXML文件中嵌入內(nèi)聯(lián)的ActionScript代碼。既可以使用MXML也可以使用ActionScript創(chuàng)建新組件。
5.理解Flex開發(fā)的Code-behind模式
雖然MXML和ActionScript本質(zhì)上是一樣的,但他們各司其職。一般來說,MXML負責(zé)顯示界面,而ActionScript用來完成功能。Code-behind用于解耦MXML和ActionScript,這樣設(shè)計師可以直接修改MXML而無需閱讀代碼,程序員則可以更好地組織和重用功能。
6.理解Flex組件的生命周期
Flex通過狀態(tài)機機制定義了一套***的生命周期模型,用于組件的創(chuàng)建、運行和銷毀,還定義了一些“入口”,開發(fā)者可以借此完成定制化的工作。沒有透徹理解組件的生命周期可能會導(dǎo)致錯誤的編程模型。
7.理解Flash運行時所使用的“跑道”模型
理解FlashPlayer的渲染和代碼執(zhí)行機制非常重要的。在執(zhí)行了改變界面的指令時,F(xiàn)lashPlayer并不是立刻把你要的內(nèi)容顯示在屏幕上,它根據(jù)一定的周期來刷新屏幕,而代碼的執(zhí)行則是另一回事。這和Java正好相反,Java總是等待程序主動告訴它什么時候重繪屏幕。
8.理解數(shù)據(jù)綁定與查看器(Watcher)
Flex開發(fā)提供了一種數(shù)據(jù)綁定機制。簡單地說,就是將一個源屬性綁定到一個目標(biāo)屬性上,當(dāng)源屬性發(fā)生變化時,目標(biāo)屬性也會隨之變化。不僅僅可以綁定到屬性,還可以綁定到函數(shù)。甚至可以為某個屬性創(chuàng)建一個Watcher,當(dāng)屬性變化時會獲得事件通知。
9.數(shù)據(jù)封裝與松耦合非常重要
對于Flex和AIR項目來說,代碼組織與高層結(jié)構(gòu)非常重要。有些人竟然在一個文件中編寫了1000多行代碼,這導(dǎo)致的問題就是牽一發(fā)而動全身。
10.理解ActionScript中的弱引用與強引用
不管使用何種語言與開發(fā)環(huán)境,內(nèi)存管理始終是一個重要的問題,ActionScript也不例外。如果不理解運行時環(huán)境的內(nèi)存管理,那么很容易就會出現(xiàn)內(nèi)存泄露與內(nèi)存碎片問題。請閱讀這篇博文及文章來深入了解ActionScript的垃圾收集機制。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Flex開發(fā)者需要了解哪些事情”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。