設計Android應用程式架構的基本指南:MVP:第2部分

Jahonn發表於2018-07-05

原文連結:https://blog.mindorks.com/essential-guide-for-designing-your-android-app-architecture-mvp-part-2-b2ac6f3f9637

目前機翻,待修正。

這是本系列文章的第二部分。在第一部分中,我們開發了MVP的概念,併為android應用程式架構制定了藍圖。如果您還沒有閱讀第一部分,那麼下面的大部分內容都沒有多大意義。所以,在繼續前進之前先完成第一部分。

這是第一部分的連結

我們將基於本系列文章第一部分中描述的藍圖開發一個完整的Android應用程式來實現MVP架構。

MVP專案的GitHub回購

連結

開發此專案是為了提供構建Android應用程式的正確方法。它包含了android應用程式大部分內容所需的所有程式碼。

該專案最初看起來會非常複雜,但隨著您將花時間探索,這對您來說將變得非常明顯。該專案使用Dagger2,Rxjava,FastAndroidNetworking和PlaceHolderView構建。

以此專案為案例研究。研究它的每一個程式碼。如果存在某些錯誤,或者您可以提出更好的邏輯實現,則建立一個拉取請求。我們正在逐步編寫測試,因此可以自由地為它們做出貢獻併為它們建立拉取請求。

開發的應用程式的螢幕如下:

這個應用程式有一個登入螢幕和一個主螢幕。登入螢幕實現谷歌,Facebook和伺服器登入。google和facebook登入是通過虛擬api實現的。登入基於訪問令牌檢索,後續api呼叫受此令牌保護。主螢幕建立帶有與MVP相關的問題的抽認卡。此repo包含程式碼,用於演示任何應用程式的骨架方面的大多數可能的應用程式元件。

我們來看一下專案結構:

整個應用程式分為五個部分:

  1. data:它包含訪問和操作元件的所有資料。
  2. di:使用Dagger2提供類的依賴關係。
  3. ui:檢視類及其相應的演示者。
  4. 服務:應用程式的服務。
  5. utils:實用程式類。

類的設計方式使其可以繼承並最大化程式碼重用。

專案結構圖:

最簡單的想法在他們的概念中最為複雜。

有很多有趣的部分。但如果我嘗試一次解釋所有這些,那麼它將一次變成太多的資訊。所以,我認為最好的方法是解釋核心哲學,然後讀者可以通過導航專案回購來理解程式碼。我建議你參加這個專案研究至少一週。按反向時間順序研究主要類別。

  1. 研究build.gradle並查詢所有使用的依賴項。
  2. 探索資料包和幫助程式類的實現。
  3. ui base包建立Activity,Fragment,SubView和Presenter的基本實現。所有其他相關元件應該從這些類派生。
  4. di package是為應用程式提供類的依賴項。要理解依賴注入,請閱讀我釋出的兩部分文章,Dagger2第1部分Dagger2第2部分
  5. 資源:樣式,字型,可繪製。

閱讀本系列文章的第3部分:它包括MVP中的Dialogs,ViewPager,RecyclerView和Adapters。

https://blog.mindorks.com/essential-guide-for-designing-your-android-app-architecture-mvp-part-3-dialog-viewpager-and-7bdfab86aabb


如果您的專案非常龐大,許多開發人員同時處理它,那麼請使用Interactors和Repositories閱讀此MVP架構的擴充套件:

https://blog.mindorks.com/android-mvp-architecture-extension-with-interactors-and-repositories-bd4b51972339

參考資源:


 

讓我們成為朋友的TwitterLinkedInGithub上Facebook的

編碼器的搖滾

相關文章