Android(安卓)Architecture Blueprints(架构蓝图)
项目架构蓝图
简介:
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 glance和How 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/ 目录,导入项目.
资源参考:
-
Android项目架构: https://github.com/googlesamples/android-architecture
-
项目架构的WIKI介绍 https://github.com/googlesamples/android-architecture/wiki
-
案例项目规范分析 : https://github.com/googlesamples/android-architecture/wiki/To-do-app-specification
更多相关文章
- Android实训案例(九)——答题系统的思绪,自己设计一个题库的体验,一
- Android开发入门——Android(安卓)Studio 如何导入他人项目(·刚
- Android(安卓)sdk 简单的客户端源代码
- Android课程表架构简要分析
- android机顶盒简单案例
- 8月顺利拿到OPPO公司Android架构师offer,一面+部长面
- Android项目源码质量检测
- android中使用ViewPager实现图片左右拖动
- Android项目管理之数据库升级策略