项目架构蓝图


简介:

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

更多相关文章

  1. Android实训案例(九)——答题系统的思绪,自己设计一个题库的体验,一
  2. Android开发入门——Android(安卓)Studio 如何导入他人项目(·刚
  3. Android(安卓)sdk 简单的客户端源代码
  4. Android课程表架构简要分析
  5. android机顶盒简单案例
  6. 8月顺利拿到OPPO公司Android架构师offer,一面+部长面
  7. Android项目源码质量检测
  8. android中使用ViewPager实现图片左右拖动
  9. Android项目管理之数据库升级策略

随机推荐

  1. Android(安卓)UI之Tab(TabActivity+TabHo
  2. 关于android的各种花式键盘问题
  3. 模拟用户点击,“去除”USB弹框
  4. Android(安卓)API Guides---App Widget H
  5. Android(安卓)Studio 下debug情况下直接
  6. 卡拉OK歌词原理和实现高仿Android网易云
  7. Android实现一个简单的SQLite数据库的增
  8. Android自定义View --来回滚动背景
  9. Android(安卓)Alert Dialog解决点击按钮
  10. Android之Activity之间的数据通信方式大