2016-11-06 97 views
0

有一個有點太多的代碼在這裏這樣的帖子,我會後GitHub的鏈接:這四個Android類組成的模式名稱是什麼?

PhotoManager.java

PhotoTask.Java

PhotoDecodeRunnable.java

PhotoDownloadRunnable.java

從評論PhotoTask等級:

此課程管理PhotoDecodeRunnablePhotoDownloadRunnable對象。它不執行下載或解碼;相反,它爲執行工作的任務管理持久性存儲。它通過實現下載和解碼類定義的接口,然後將其自身作爲參數傳遞給下載或解碼對象的構造函數來完成此操作。實際上,這允許PhotoTask在線程上啓動,在委託對象中運行下載,然後運行解碼,然後重新開始。這個類可以彙集並在必要時重用。

評論將PhotoTask視爲「管理任務的永久存儲」。這是委託模式嗎?我會欣賞你對這些課程和模式的任何知識。

回答

1

PhotoManager使用Object Pool模式,或更具體地說Thread Pool,因爲它創建,管理和重用池中的線程實例。

Runnable類一般使用Command pattern,這是通過封裝方法調用來模仿沒有函數指針的委託的方法。

PhotoTask使用多個可運行子接口並實現它們的接口。它將其行爲委託給可運行對象,對我來說實際上看起來像一個Facade,以隱藏複雜性並封裝特定任務。

相關問題