1. 前言

只要有1,2年工作经验的程序员,多多少少都会接触到架构东西。可能平时工作中不一定会有机会从0到1完完全全自己去设计一套架构出来,但是如果想成为高级工程师,技术专家,架构师……尽早接触架构方面的知识是有利无害的。我收集了很多材料,现在汇总在这里,方便查阅。

这篇博文会不断更新的哦!现在的版本是 2020-03-24 更新的。

2. 杂谈

Android框架式编程之架构方案(这篇文章个人觉得总结的很不错,把目前Android App开发会使用的架构都有提及到)

开发杂谈:Android移动应用架构发展简史

3. 编码架构

编码架构,也有人称为代码架构、架构模式、框架模式等等,主要分为三类:MVC、MVP 和 MVVM。

3.1 MVC

Android 设计模式之MVC,从一个实例中来理解MVC

Android基础——框架模式MVC在安卓中的实践(这篇文章实现的MVC有点特别哦!可以看看!)

Android开发-通过通俗易懂的Demo让你理解Android中MVC架构和MVP架构

3.2 MVP

一个小例子彻底搞懂 MVP

Android基础——框架模式MVP在安卓中的实践

Google TODO-MVP详解

浅谈构架模式 - 考拉移动团队的技术博客(涉及MVP和MVVM)

一文带你全面了解MVC、MVP、MVVM模式(含实例讲解)(主要介绍了MVP)

3.3 MVVM

MVVM dataBinding 学习心得

Android项目开发-MVVM(7篇文章组成的一个专题)

Android架构模式之AAC(AAC全称Android Architecture Components,是Android官方推出的MVVM架构指导方案)

4. 工程架构

工程架构,也有人称为项目架构,主要分为四类:单工程模式、模块化、组件化、插件化。其中“单工程模式”就是整个项目工程只有一个module,主要靠分包来进行功能划分,是最基础的一种工程架构,我就不罗列资料了。

对于“模块化”和“组件化”的区别,估计很多人都比较迷吧!根据这边文章“对组件化与模块化的思考与总结”的观点,大概可以这么讲:

  • 模块化强调的是拆分,无论是从业务角度还是从架构、技术角度,模块化首先意味着将代码、数据等内容按照其职责不同分离,使其变得更加容易维护、迭代,使开发人员可以分而治之。
  • 组件化则着重于可重用性,不管是界面上反复使用的用户头像按钮,还是处理数据的流程中的某个部件,只要可以被反复使用,并且进行了高度封装,只能通过接口访问,就可以称其为“组件”

我个人是比较赞同这种说法的,所以我就不把模块化和组件化单独来讲了。

4.1 模块化和组件化

一种Android客户端架构设计分享

微信Android模块化架构重构实践

安居客 Android 项目架构演进 - BaronTalk

Android 模块化探索与实践 - BaronTalk

Android 架构思考 (模块化、多进程) - Spiny

Android组件化方案最佳实践 - 门心叼龙(涉及到插件化,其中开源的项目挺不错的)

Android组件化方案 - 张华洋(对于组件化的介绍非常详细,同时还有关键代码的讲解)

Android组件化之终极方案 - 张华洋

4.2 插件化

Android 插件化开发(一):Java 反射技术介绍

Android 插件化开发(二):加载外部Dex文件

Android 插件化开发(三):资源插件化

Android 插件化开发(四):插件化实现方案

如果想进一步交流和学习的同学,可以加一下QQ群哦!

Android App 架构设计相关资料汇总相关推荐

  1. Android APP架构设计——MVP的使用示例

    0. 前言 为了更好地进行移动端架构设计,我们最常用的就是MVC.MVP和MVVM,作为三个最耳熟能详的三大架构,应用可谓非常广泛.对于这三种架构设计以及优缺点已经在Android APP架构设计-- ...

  2. Android App架构设计

    前言 Web的架构经过多年的发展已经非常成熟了,我们常用的SSM,SSH等等,架构都非常标准.个人认为,Web服务逻辑比较清晰,目的明确,流程也相对固定,从服务器收到请求开始,经过一系列的的拦截器,过 ...

  3. Android App的设计架构:MVC,MVP,MVVM与架构经验谈

    本文转载自https://www.tianmaying.com/tutorial/AndroidMVC,原文作者周鸿博. 和MVC框架模式一样,Model模型处理数据代码不变在Android的App开 ...

  4. iOS APP 架构设计

    ????????关注后回复 "进群" ,拉你进程序员交流群???????? 转自:掘金 iOS一叶 https://juejin.cn/post/69816998875491205 ...

  5. android客户端框架,最新的一版,通用Android 客户端架构设计,只有你还没看过

    客户端架构设计 客户端设计 目的是整体设计客户端App,架构上打好铺垫. Android客户端架构设计 主要从以下几个方面进行设计:MVP设计风格.整体架构.日志系统.网络系统.本地存储.Test模块 ...

  6. Android APP架构心得

    前言 从JavaEE转到Android开发也2年多了,开发的项目也有4,5个了(公司项目),其中有3个项目前期都是自己独立开发,从一开始的毫无架构到现在对如何架构也有一点心得,所以在此分享出来,大家一 ...

  7. 一种Android客户端架构设计分享

    转载请注明出处:http://blog.csdn.net/ahence/article/details/56678126 技术发展日新月异,业界各种Android客户端架构设计,五花八门,但我们不能简 ...

  8. App架构设计经验之谈

    App架构设计经验之谈 1.接口的设计 1.1安全机制的设计 由于App的接口大部分采用RESTful架构,而RESTFul最重要的一个设计原则-客户端与服务器的交互的无状态性,所以,当涉及到用户状态 ...

  9. APP架构设计经验谈:接口的设计

    APP架构设计经验谈:接口的设计 原创文章,转载请注明:转载自Keegan小钢并标明原文链接:http://keeganlee.me/post/architecture/20160107微信订阅号:k ...

最新文章

  1. 行人属性--HydraPlus-Net: Attentive Deep Features for Pedestrian Analysis
  2. postgres的initdb解析——从一次插件升级失败说起
  3. 世界上第一位程序员是位美女——AdaLovelace【有图为证】
  4. Spring框架集成mybatis框架的配置(笔记)
  5. spring实现模板文件下载
  6. 大话设计模式—外观模式
  7. java 序列化异常_关于spring:Java序列化异常消息
  8. java 按字节读写二进制文件(Base64编码解码)
  9. 排查DHCP服务器故障
  10. 国内主要OTT平台背后的那些CDN服务商
  11. 35岁,技术转管理,空降新团队,测试管理的10问10答
  12. linux服务器下进入BIOS,一种8路服务器Linux操作系统下刷新BIOS的方法与流程
  13. TensorRT | 入门篇
  14. 长铗:未来可被预言,区块链可被定义
  15. MHDD修复UNC和TIMEOUT
  16. 已知销售额怎么计算成本_知道销售总额怎么计算成本价?
  17. 液压比例阀放大器比例控制器比例阀放大板
  18. 第七次全国人口普查登记今日零时启动 六大释疑都在这
  19. js 计算两个日期之间相差的天数,并适配 Ios
  20. coursera 吴恩达 -- 第一课 神经网络和深度学习 :第三周课后习题 Shallow Neural Networks Quiz, 10 questions

热门文章

  1. 【计算机毕业设计】基于微信小程序的高校学生选课系统
  2. 网络语言c三个字猫头鹰,猫头鹰大班精选语言教案
  3. 开发微信小程序调用拼多多接口
  4. ftp服务器工作原理示意图,3.1.3 FTP服务的工作原理
  5. 如何写好文档之金字塔原理
  6. 以彼之道,还施彼身:Android 模拟定位
  7. 多人博客管理系统登录功能
  8. 0x01.XG VisionEditor Ver.4.4 Crack (20191122)_Nomad
  9. 数据库SQL(六):Triggers(触发器)
  10. 热电阻温度测量线性化显示实验