菜鳥學PureMVC記

2021-09-22 09:43:53 字數 1692 閱讀 5681

最近工作中需要用到flash,開發框架中又是以puremvc為主。mvc是有了解,但是puremvc這個之前則是從沒接觸過。那就學唄~~

」字樣。其中的大概做法,就是解壓,然後將「puremvc_as3_2_0_4.swc 」新增到專案的庫中。因為,我用的是flashdevelop,所以新增方法如下:選中專案的lib資料夾-》右鍵新增存在的檔案-》選擇puremvc_as3_2_0_4.swc-》右鍵單擊新增進來的這個檔案-》選擇新增到庫中(add to library)。這樣便可以算前期工作全部結束了。

puremvc教程[英文]:

簡單的說,puremvc源於mvc模式,主要就是model、view、controller這三層次。但在puremvc中上述三個都被封裝成了三個核心層,並通過單例模式提供給應用程式。開發人員不需要直接使用這三個核心層。puremvc為了簡化開發複雜度,提供了乙個facade類,該類提供了與核心層通訊的唯一介面,可以初始化上述三個核心層,並可以訪問它們的public方法,同時該類也是以單例模式提供給應用程式。開發人員只需要繼承乙個facade類並建立具體的facade類就可以實現整個mvc模式。除了知道facade類之外,還需要了解與三個核心層相輔助的三個類:proxy、mediator、command。

proxy,可以理解為**,負責運算元據的訪問。

mediator,可以理解為媒介,負責ui層與控制層之間的溝通。

command,則是用來操作具體的業務邏輯。

為了對這三個核心層盡量的解耦,puremvc中採用了訊息機制,層與層之間的通訊通過傳送訊息(notification)來實現。訊息傳送者只需要實現傳送,不需要知道誰會接收這些訊息。訊息接收者如果需要接收訊息,只需要註冊一下對應的訊息就可以了。如:registercommand(start_up, startupcommand);這句話產意思就是註冊了乙個對應關係,其中start_up是訊息的名稱,startupcommand則是乙個command,這樣當有人傳送了start_up名稱的訊息後,就會由startupcommand進行處理。

第四步,動手寫自己的demo(在我的這個demo中,實現功能很簡單:記錄每次滑鼠單擊時在x方向上的偏移量)。

1)建立乙個新的專案,就叫做 "myfirstpuremvc」 吧。新建立的專案,應該可以看到bin、lib、src這三個資料夾,在src下有乙個main.as檔案,bin下有一些用於呈現網頁的檔案(專案中基本不需要用到)。

在這個類中,主要實現了父類的execute方法。在該方法中註冊了乙個**和媒介。這兩個東東,在隨後的程式執行中需要使用,所以要進行一下註冊。註冊了之後,接下去如果要使用則直接可以從facade中獲取。

接著來看下stagemediator.as,這個東東關係到我們的view檢視,與我們可以看得到的ui密切相關。我們在ui上觸發的一些事件會由這個stagemediator類接收(並進行簡單的封裝)後傳送給控制層去處理。

在這個類中,就輸出了x方向上偏移量。

接下來,你只需要ctrl+enter測試就可以了。

是不是很奇怪,從頭到尾都沒有用過model層,是的,這可能是我這個demo的缺陷,因為我這個demo中不需要查詢資料庫或其它資料儲存區來獲取或寫入資料,因此並沒有使用到。

上面的整個過程,只起到乙個簡單的演示作用。如果大家需要深入學習,建議大家參考網上達人們的文章。

從PureMvc 學 設計模式

這個框架是乙個 實現非常精簡mvc 框架 適用於 c s 結構的程式。框架的核心類有 controller view modle controller 中包含對view的引用 並且包含對 map string 是通知 型別的名字 command 是對應的 命令操作 view 中有乙個 map map...

菜鳥防毒記

當下病毒木馬瘋狂,在買不起正版防毒軟體的情況下 為了在木馬洪流中使自己的電腦不受傷害 本人也跟病毒木馬經歷了幾年大大小小的肉搏戰 總結一下經驗以備後用 一 發現木馬 發現木馬和病毒一般可以借助一些檢測軟體,如360安全衛士,超級兔子等,在沒有這些工具的時候,也只能手工來查毒了。一般電腦出現啟動速度變...

菜鳥學脫殼

一般舊版upx脫殼 說明 upx典型的入口pushad,對應出口popad,一般都要經過jmp跨段跳躍到達程式的真正入口。工具 ollydbg v1.10 方法1 逐步跟蹤,f8一直往前走,不讓程式往回走,想往回就f4跳過,直到遇到popad後邊跟 乙個跨段跳躍 就是跳的很遠 的jmp,期間可能有多...