成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

從ActionScript3編程書籍中的ENTER_FRAME說起

開發 后端
ActionScript3編程的書籍也不少了,但即使是O'Reilly的書籍,其中也有一些“誤導”讀者的內容在內:它們并沒有從一開始就倡導良好的編程習慣。本文借常見的ENTER_FRAME事件來說明這一問題。

學習一門技術,比較系統的途徑仍然是書籍。然而教程書籍有時提供的范例并沒有推薦良好的編程習慣,使讀者走了不少的彎路。7yue這篇博文便是就ActionScript3編程書籍的一些常見情況來描述這一問題。

現在開始接觸ActionScript3編程的愛好者越來越多,他們可以選擇從不同的角度來學習ActionScript3編程:書籍,教程,博客,開放源碼項目等等。我最近發現一個有趣的現象,就是AS3的部分教程中都存在一個小問題,就是當面向初學者提供某些范例和教程時,這些內容并未從良好的編程經驗或者是習慣入手,而是寄期望于日后的學習中,再了解更好的,更加值得使用的方法,我在想,為什么很多教程或文章不能一開始就提供***實踐相關的內容給愛好者呢?這樣,既提高了學習的效率,也減少了學習的彎路。

比如,下列的一小段代碼出自某本O'Reilly的書籍

書中這段代碼目的是讓開發者了解AS3在SWF中的處理優先級是大于可視化效果的,于是,就先用這樣的一段代碼來說明:

  1. for (var i:int = 0; i<50; i++){  
  2.   myClip.x+=2;  
  3. }  

這段代碼為了說明在循環中,MC的位置根本就不會按照for循環一樣,呈現x坐標的遞加,而是直接跳轉到***循環結束時x坐標的位置上去,這其實沒什么問題,但是下面的代碼,則是說,開發者可以使用Event.ENTER_FRAME事件來觸發一個偵聽函數,在偵聽函數中處理一個MC的移動。

  1. myClip.addEventListener(Event.ENTER_FRAME,slideClip);  
  2. function slideClip(evt:Event):void{  
  3.   if (myClip.x <100){  
  4.     myClip.x += 2;  
  5.   } else {  
  6.     myClip.removeEventListener(Event.ENTER_FRAME,slideClip);  
  7.   }  
  8. }  
  9.  

開發者在學習這段代碼的時候,尤其是初學者,就對Event.ENTER_FRAME有了深刻的印象,于是乎,隨著他的學習曲線,以后對于AS3中對于MC的動態處理,他們自然而然的就會不斷的用到ENTER_FRAME,甚至于不斷的將各種處理機制都放入其中。結果顯而易見,大量的應用性能和靈活性問題隨之而來,或許在若干長的時間過后,才聽到有講座說,ENTER_FRAME是一個不推薦的編程方式,更推薦大家用Timer云云之類的說法。

這些類似的教程內容本身沒有什么錯,為了演示一個功能或特點,使用了最容易實現的方法來說明問題,如果這是一個售前工程師的工作,那么這種方式是***的,如果是面向讀者和學習的人,這種方法是粗心的,不考慮學習成本和效率的,因為它直接導致了開發者的常用編程方式,直到開發者積累了一定的經驗,抑或是付出了一定的代價之后,才會發現有更好的方式,更加的性能來實現同樣的結果。所以,如果寫書或者是教程,我覺的更好的一點是多考慮一下學習者的成本和曲線,不要為了達到目的,而讓學習者獲取了一個實際并不可取的方法。

記得以前我就發現過這樣的問題,在MSDN上,存在著大量的代碼和范例,結果用到后來,才發現是不好的和有很大代價的內容,我就在想,為啥不能在我學習的時候就告訴我一個更好的方法呢?

【編輯推薦】

  1. Adobe進軍云計算 Flash云平臺服務推出
  2. Adobe 18億美元收購軟件商Omniture 抑制銷售下滑
  3. Google或因收購On2與Adobe反目
  4. Adobe向開發者社區開源兩項目
  5. Flash Builder能否為Adobe贏得RIA之戰
責任編輯:yangsai 來源: 7yue的博客
相關推薦

2021-03-17 09:51:31

網絡編程TCP網絡協議

2024-06-28 09:25:51

2011-06-07 10:33:11

Android Activity

2020-12-09 05:28:22

語言Charj代碼

2010-09-16 10:46:47

2012-03-19 21:06:52

Android

2018-02-27 12:41:21

Serverless邊緣計算存儲

2012-03-13 16:16:39

AdobeAIR for TV

2018-11-30 11:19:02

DNS根服務器網絡

2010-11-24 11:15:40

Qualcomm實施云計算

2011-12-15 22:13:30

手機平板電腦移動互聯

2025-06-20 10:18:58

大模型

2010-05-05 09:52:06

Unix BSD

2010-05-24 17:23:41

Linux SNMP

2013-03-25 11:11:37

編程語言編程語言書籍編程語言書

2013-01-30 10:28:06

閱讀方法編程書籍程序員

2010-08-17 17:01:14

華為認證

2018-10-07 23:20:17

物聯網LPWANIOT

2009-08-28 11:03:21

C#快速排序

2013-08-29 10:35:58

亞馬遜AWS公共云
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品久久 | 精品欧美一区免费观看α√ | 日韩精品在线视频 | www中文字幕 | 毛片一区 | 欧美jizzhd精品欧美巨大免费 | 亚洲精彩视频在线观看 | 久久国产激情视频 | 国产精品视频一 | 欧美日韩国产一区二区 | 亚洲视频 欧美视频 | 一级片av| 一级做a爰片久久毛片 | 欧美精品一区二区三区四区 | 亚洲精品在| 久久一二区| 男女啪啪高潮无遮挡免费动态 | 国产精品久久久爽爽爽麻豆色哟哟 | 2019天天干夜夜操 | 成人av一区二区在线观看 | 亚洲综合视频 | www.youjizz.com日韩 | 一区二区在线不卡 | 精品中文字幕在线观看 | 国产情品 | 欧美福利视频一区 | 一区二区三区视频在线免费观看 | 亚洲一区二区免费视频 | 四季久久免费一区二区三区四区 | a级片网站 | 欧美久久久久久 | 99热热热| 亚洲精品久久久久久久久久吃药 | 欧美日韩高清一区二区三区 | 99riav3国产精品视频 | 成人福利视频 | 精品国产乱码久久久久久牛牛 | 9999在线视频 | 国产丝袜一区二区三区免费视频 | 成人亚洲性情网站www在线观看 | 亚洲国产精品99久久久久久久久 |