❤️跟上时代步伐,走进Android开发架构设计演变❤️

去年10月底来到了新公司,刚开始接手 Android 项目时,发现该项目真的是一团遭,项目开发上没有任何架构可言,开发人员连简单的 MVC、MVP 都不了解,Activity 及其臃肿,业务边界也不明确,因此我决定重新分析一下当前主流的几种开发架构,选出适合当前项目的架构形式,顺便带大家进入下实战演练。

说到 Android 应用的架构,大家都不陌生。

最早使用的是 MVC 模式(Model–view–controller),但 MVC 模式下 Activity 类过于臃肿,为解决这个问题,有了 MVP(Model–view–presenter),Presenter 不仅要操作数据,而且要更新 View,再到 MVVM(Model-View-ViewModel),解决了 MVP 大量的手动同步 View 和 Model 的问题,提供双向绑定机制。

用一张图来总结:

从项目的包结构看架构

从项目的包结构看架构

我看软件架构

之所以需要架构,是为了项目业务可以更好地可持续发展;没有哪个架构是最好的,所有的架构都是建立在业务基础之上,撇开业务讲架构都是空谈。

那么如何选择架构又成了一个问题,这就需要必须熟悉每个架构的优点和灵活性。
从实际角度看,优秀的软件架构不应该进行过度设计,否则可能带来维护者成本。
软件架构设计亦应坚固可靠,以应对内外界多种不同类型的攻击,提供可靠、精准的输出。面对外界的变化,响应要迅速及时。同时还要做到灵活可扩展。
同样,软件架构也应具备美观性,代码要简洁,易于阅读、维护、能使维护者从直观上对功能产生更清晰的认识,从而能够快速地处理变化。优秀的软件架构亦是组件抽象,没有复杂依赖关系,易于扩展分离的。

概念都懂,但如何运用呢?
这篇即学即用Android Jetpack - Navigation教你构建框架

如果

你还在为不能开发Android项目感到困惑吗?
你还在为Android项目设计感到困惑吗?
你还在为跟不上Android架构的演变感到困惑吗?

这份介绍Android框架的初始化过程及主要组件的工作原理。分析Android框架的主要源代码,理解框架工作原理所需的各种基础知识和构成实际Android平台骨干的服务框架,《Android架构开发手册》,你还不收藏嘛?下面是详细内容:

第一章. Android Jetpack实战和教程

  • Android Jetpack - Navigation
  • Android Jetpack - Data Binding
  • Android Jetpack - ViewModel & LiveData
  • Android Jetpack - Room
  • Android Jetpack - Paging
  • Android Jetpack - WorkManger
  • Android Jetpack - Paging 3

第二章.MVC/MVP/MVVM

  • MVC框架-导言
  • MVC框架-ASP.NET窗体
  • MVC框架-第一应用程序
  • MVC框架-文件夹
  • MVC框架-模型
  • MVC框架-控制器
  • MVC框架-视图
  • MVC框架-布局
  • MVC框架-路由引擎
  • MVC框架-动作过滤器
  • MVC框架-高级示例
  • MVC框架-Ajax支持
  • MVC框架-捆绑
  • MVC框架-异常处理
  • MVP架构设计:Google官方MVP思想解读
  • 开源MVP框架
  • MVC、MVP、MVVM,到底该怎么选

第三章. 国内知名架构文章

1. 抖音 iOS 工程架构演进

  • 前言介绍
  • 抖音工程架构演进
  • 组件化
  • 流水线式迭代开发
  • 抖音工程架构演进
  • 组件化探索过程中遇到的一些问题:

2.美团外卖 Android 平台化架构演进实践

  • 平台化背景
  • 屡次探索
  • 搜索库拆分实践
  • 页面组件化实践
  • MVP 分层复用实践
  • 中间层实践
  • 平台化实践
  • 平台化总结
  • 展望

3.安居客 Android 项目架构演进

  • 三网合并
  • 由RxJava驱动的MVP架构
  • 组件化与模块化

4.携程 Android App 插件化和动态加载实践

  • 需求驱动
  • 原理
  • 实现
  • 收益与代价

5.微信Android客户端架构演进之路

  • 拓荒
  • 成长
  • 变革
  • 进化
  • 开放

6.千万级用户的 Android 客户端是如何养成的 | 架构师实践日

  • 模块内的解耦
  • 灰度发布机制
  • 模块间通信
  • 总结

7.手机淘宝构架演化实践

  • Bundle
  • WebApp
  • PackageApp
  • 研发支撑
  • 测试支撑
  • 运维支撑
  • 发布支撑

英语流利说 Android 架构演进

  • 英语流利说早期架构
  • 英语流利说核心架构
  • 核心架构说明
  • 引入多进程层
  • 英语流利说常用辅助架构
  • 英语流利说常用支持型架构

有需要文中资料的可在评论顶置领取

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值