2011-02-23 99 views
7

除了瞭解Java之外,在開始研究Android SDK之前應該學習哪些設計模式?開始Android開發之前我應該​​學習哪些設計模式

編輯:爲什麼我問這個問題,因爲在看SDK後,我認爲,不知道這一點,它大量使用適配器模式,我想知道如果我能知道原因是什麼其他正在使用的模式,它可以幫助我學習過程。

謝謝。

回答

4

從Java到桌面編程到android編程的最大跳躍之一是使用XML來設計和控制界面佈局。如果你想研究Android系統的編程,我肯定會花時間去熟悉XML。我對精確的設計實踐不太熟悉,但iOS開發中非常強調模型 - 視圖 - 控制器系統,如果Android程序也一樣,我不會感到驚訝。

當然,開發者網站將顯得太爲任何資源的好地方:http://developer.android.com/index.html

這篇文章,我發現在週末,而在編碼競賽也可以幫助你在正確的道路 去http://answers.oreilly.com/topic/1133-how-to-start-programming-in-android/

4

沒有必要學習任何設計模式來開始使用Android SDK(可能知道Observer/Listener模式將幫助您熟悉Android中的事件處理)。

很明顯知道它們會幫助你理解Api某些部分背後的意圖。

0

意見?剛開始黑客攻擊。 Developers Guide可以幫助您一路引導。

1

Android等高級框架往往會遵循一組設計模式。這幾乎就像你在學習工作中的模式。一個很好的例子是OnXXXListener接口的發佈者/訂閱者模型。如果你按照框架提出的方向發展,那麼它真的只是來找你(當然,在我看來)。例如,我創建了一個顏色選擇器視圖。我希望View(活動)的消費者能夠接收「選擇顏色」等通知。我只是看看SDK類如何做到這一點,並遵循他們的領先(使用onColorSelected方法創建OnColorSelectedListener接口,並通過我的顏色選擇器視圖中的setOnColorSelectedListener公開此功能)。

從.Net背景到Android/Java,我真的看到了差異。 .Net有很多不同的設計模式,爲您的自定義類提供非常好的指導。好消息是,.Net BCL和Android SDK背後的工程師在實現一些非常常見的設計模式方面做得很好,因此有很好的例子可以遵循。

1

在我看來,您可以先開始編寫代碼,並且當您發現自己的代碼很糟糕或發現自己編寫冗餘代碼時,可以查找設計模式以使您的設計更好。

0

我不明白如何從事件處理代碼(ActivityClass)和表示代碼(XML)中分離出您的應用程序算法(模型)。關鍵的想法是分離關注點和鬆散耦合。

JAL

相關問題