一文理解模块化、组件化、插件化的区别——Android开发进阶必备

本文探讨了组件化和插件化在Android开发中的应用,强调了解耦、编译速度和通信方式的区别。作者分享了组件化实战案例,以及组件化开发中的问题与解决方案,同时推荐了一本详细的组件化实战学习手册。
摘要由CSDN通过智能技术生成

组件化实现的是解耦与加快编译, 隔离不需要关注的部分。

插件化实现的也是解耦与加快编译,同时实现热插拔也就是热更新。

组件化的灵活性在于按加载时机切换,分离出独立的业务组件,比如微信的朋友圈

插件化的灵活性在于是加载apk, 完全可以动态下载,动态更新,比组件化更灵活。

组件化能做的只是, 朋友圈已经有了,我想单独调试,维护,和别人不耦合。但是和整个项目还是有关联的。

插件化可以说朋友圈就是一个app, 我需要整合了,把它整合进微信这个大的app里面

其实从框架名称就可以看出: 组 和 插。

组本来就是一个系统,你把微信分为朋友圈,聊天, 通讯录按意义上划为独立模块,但并不是真正意义上的独立模块。

插本来就是不同的apk, 你把微信的朋友圈,聊天,通讯录单独做一个完全独立的app, 需要微信的时候插在一起,就是一个大型的app了。

插件化的加载是动态的,这点很重要,也是灵活的根源。

以上是对三个思想的解析,相信应该能明白不同的概念的具体意义和区别在哪了。

4、子模块划分

除了大家公认的common部分, 业务模块的划分尤为重要,相比于狭义上的架构,广义上的子系统的划分的关注点,很考验技术经验以及对业务的理解。

5、通信方式

模块化的通信方式,无非是相互引入;我抽取了common, 其他模块使用自然要引入这个module 组件化的通信方式,按理说可以划分为多种,主流的是隐式和路由。隐式的存在使解耦与灵活大大降低,因此路由是主流 插件化的通信方式,不同插件本身就是不同的进程了。因此通信方式偏向于Binder机制类似的进程间通信

废话说了这么多,其实本篇作为组件化的引导篇,主要是想让大家掌握组件化开发。网上有很多关于学习组件化开发思路的文章,组件化原理很简单,但是真正实施起来还是挺困难的,没有相应的实战+源码参考就做好踩坑的准备吧。

最近小编有幸在字节跳动高工手里扒到这份“组件化实战学习手册”,这位大佬主导开发过多个采用组件化架构的APP项目。现在我只想吹爆!这位大佬熬夜半个月,把积累的经验和踩的坑都进行了总结,整理成了长达220页的学习手册,手册中收录了大厂热门的组件化项目实战,从新手到架构师,这份学习手册足以。

第一章 Android组件化初识
  • 组件化和模块化的区别

  • 组件化和插件化的区别

  • 组件化开发的优势

  • 业务逻辑层

  • 组件化开发要遇到的问题

  • 从组件化实战来解决问题

  • Android组件化基础

……

第二章 Android组件化初探目录
  • 组件化演示案例

概述

模块化和组件化

组件化Demo

组件application和library动态切换

……

  • WanAndroid APP 组件化项目实战附demo

版本更新

效果图

主要功能

项目目录结构

主要开源框架

……

第三章 架构演化(大厂篇)
  • 从智行 Android 项目看组件化架构实践

组件化调整的原因和目标

组件化架构调整的整体规划

组件化架构调整中遇到的一些问题

  • 得到 App

Android彻底组件化demo发布

JIMU使用指南

组件化拆分的感悟

……

  • 微信 App

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

微信Android架构历史

为何再次重构微信

……

  • 蘑菇街 App

蘑菇街 App 的组件化实现方式

组件生命周期管理

壳工程

遇到的问题

持续集成

周边设施

……

  • 爱奇艺 App

基于Service的IPC通信

组件化跨进程通信的核心诉求

Andromeda

架构分析

……

  • 美团 App

外卖客户端容器化架构的演进

美团外卖容器化架构全景图

外卖跨端容器建设

外卖页面容器建设

外卖容器化架构的衡量指标

外卖容器化架构的监控运维

最后

跳槽季整理面试题已经成了我多年的习惯!在这里我和身边一些朋友特意整理了一份快速进阶为Android高级工程师的系统且全面的学习资料。涵盖了Android初级——Android高级架构师进阶必备的一些学习技能。

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题(含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

45985938)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 20
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值