谷歌的示例代码中的开发框架
https://github.com/googlesamples/android-architecture
Sample | Description |
---|---|
todo‑mvp | Demonstrates a basic Model‑View‑Presenter (MVP) architecture and provides a foundation on which the other samples are built. This sample also acts as a reference point for comparing and contrasting the other samples in this project. |
todo‑mvp‑clean | Uses concepts from Clean Architecture. |
todo‑mvp‑dagger | Uses Dagger 2 to add support for dependency injection. |
todo‑mvp‑rxjava | Uses RxJava 2 to implement concurrency, and abstract the data layer. |
todo‑mvvm‑databinding | Based on the todo-databinding sample, this version incorporates the Model‑View‑ViewModel pattern. |
todo‑mvvm‑live | Uses ViewModels and LiveData from Architecture Components and the Data Binding library with an MVVM architecture. |
Sample | Description |
---|---|
todo-mvp-kotlin | Conversion of todo-mvp to Kotlin. |
todo-mvvm-live-kotlin | Conversion of todo-mvvm-live to Kotlin. |
External samples are variants that may not be in sync with the rest of the branches in this repository.
Sample | Description |
---|---|
todo‑mvp‑fragmentless | Uses View objects instead of Fragment objects. |
todo‑mvp‑conductor | Uses the Conductor framework to refactor the app to use a single Activity architecture. |
todo‑mvi-rxjava | Adapts the Model-View-Intent pattern to Android to create a fully reactive architecture. |
todo‑mvp-kotlin-coroutines | Replaces the asynchronous operations with Kotlin's coroutines. |
These samples are no longer being maintained, but their implementation is still valid.
Sample | Description |
---|---|
todo‑mvp‑loaders | Fetches data using the Loaders API. |
todo‑databinding | Replaced by todo‑mvvm‑databinding |
todo‑mvp‑contentproviders | Based on the todo-mvp-loaders sample, this version fetches data using the Loaders API, and also makes use of content providers. |
Sample | Description |
---|---|
dev‑todo‑mvvm‑rxjava | Based on the todo-rxjava sample, this version incorporates the Model‑View‑ViewModel pattern. |