Android Architecture Blueprints(架構藍圖)

新根發表於2017-05-14

專案架構藍圖


簡介:

Android框架提供許多靈活性,正當定義如何組織和構建Android運用程式時。這種自由,雖然很有價值,但是也可能導致運用程式擁有大量的類,不同的命名和(缺乏)架構,可能使測試,維護和擴充套件困難。

Android架構藍圖的目的,是演示可能的方法來幫組解決這些常見的問題。在這個專案中,提供實現相同的運用程式,通過使用不同的價格概念和工具。

使用這些示例作為參考或者作為建立自己的運用程式的起點。這裡的重點是程式碼結構,架構,測試和維護性。但是,請記住,這裡很多方式來構建運用程式通過使用架構和工具,這取決您的優先順序您自己的特定優先順序將影響如何實現這些專案中的概念,因此,您不應將這些示例視為典型的例子。為了確保重點放在上述目標上,運用程式使用簡單的UI。

Explore the samples


該專案擁有儲存在單獨分支中的不同案例,每個案例的詳情,請閱讀分支中的README.md檔案。

####穩定的案例

案例 描述
todo-mvp 基礎的Model‑View‑Presenter (MVP)架構案例,與其他案例比對的樣本。
todo-mvp-loaders: 基於todo-mvp之上,使用Loader獲取資料的案例
todo-databinding: 基於todo-mvp之上,使用Data Bingding庫
todo-mvp-clean: 基於todo-mvp之上,使用 Clean Architecture的概念
todo-mvp-dagger: 基於todo-mvp之上,使用Dagger2的依賴注入
todo-mvp-contentproviders: 基於todo-mvp-loader之上,使用ContentProvider獲取資料的案例
todo-mvp-rxjava: 基於todo-mvp之上,使用RxJava進行併發和資料層抽象
todo‑mvvm‑databinding 基於todo-databinding之上,包含了Model-View-ViewModel模式。

####正在進行的案例

案例 描述
dev‑todo‑mvp‑tablet 基於TODO-MVP主支上,為平板電腦新增一些列的View案例。
dev‑todo‑mvvm‑rxjava 基於todo-rxjava之上,包含了Model-View-ViewModel模式。

####外部的案例

外部案例是變種的,可能與倉庫中其他分支不同步。

案例 描述
todo-mvp-fragmentless: 基於todo-mvp之上,使用android view來替換Fragments.
todo-mvp-conductor: 基於todo-mvp之上,使用Conductor框架來重構單個Activity架構。
todo-mvp-conductor: todo-mvp翻譯到Kotlin.

###如何考慮專案架構:

取決於自己,每個案例都有一個readme.md檔案,可以知道指標和主觀評估。

每個專案都是不同,具體取決於運用程式的大小,團隊大小和經驗,預估的維護量。

更多詳情,參考,Samples at a glanceHow to compare samples

AndroidStudio匯入案例


先Check Out一個案例分支,然後在AndroidStudio中開啟todoapp/目錄。

以下步驟是介紹如何開啟todo-mvp案例:

注意點:主分支不被編輯。

拷貝倉庫

git clone git@github.com:googlesamples/android-architecture.git

check out todo-mvp案例

git checkout todo-mvp 

注意點:若是檢視案例,將todo-mvp替換成被檢視案例的名字。

最後,用 Android Studio 開啟 todoapp/ 目錄,匯入專案.

資源參考

相關文章