首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Android项目开发之组件化知多少?

Android项目开发之组件化知多少?

作者头像
陈宇明
发布2020-12-16 09:41:29
发布2020-12-16 09:41:29
5220
举报
文章被收录于专栏:设计模式设计模式
一. 前言

模块化和组件化的概念已经看的很多,也都不是新的概念了,很多项目也已经使用了模块化和组件化,本文对现有的模块化与组件化分析得比较深入的文章进行整理。

当项目做得业务需求和层级增多,原有的基础层级已经不能满足不断增加的业务需求,代码也变得越来越臃肿。组件化将代码解耦分层、分而治之。

大致上来说,组件化是指单一的功能组件。目的就是基于可重用的,将一个大系统拆分成一个个独立的组件。而模块指的是独立的业务模块,按照业务对项目进行拆分。相对于组件来说,粒度更大。

下面就推荐几篇大佬们的文章助你弄明白模块化、组件化及插件化的概念,还有如何应用到项目开发上。

二. 文章系列

1 Android彻底组件化方案实践(注:我是可以点击的哦)

文章对模块化、组件化与插件化概念进行讨论,形象化地让人记住组件化与插件化的区别,进而详细表述如何进行组件化及组件化的步骤。

2. Android彻底组件化源码分析

文章主要通过对“得到app”的项目代码进行组件化拆分,设计一套完整的组件化方案。

3. App组件化与业务拆分那些事

文章讨论了为什么要组件化、模块化,从业务的角度,讲解了为什么要拆分App业务,如何拆分,以及优点等等。

下图为组件示意:

下图为模块示意

可以看出,一个工程由多个模块组成,每个模块由多个组件构成。但有时候,两者的界限还是比较模糊。

4. 浅谈Android组件化

这篇是采访得到APP的Android 技术专家张明庆老师,了解其组件化背后的故事,是对采访稿的整理。

文中也讨论了模块化、组件化和插件化的区别,以及如何取舍插件化和组件化,及组件化后的成果。具体如何实现组件化,可参考文章系列的一和二。

5. Android 模块化探索与实践

这篇文章对于模块化的概念和分层设计,以安居客 Android 端的模块化设计方案为例,给予了深入的分析和阐述。

另外,对模块间通讯框架也给出了设计方案,如下图:

是不是已经看累了?马上就可以动手实践了!

三. 项目实践系列

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

此文以安居客公司项目的开发过程为例,阐述了组件化模块化开发的必要性,与文章系列5相对应。

安居客模块化的整体设计如图:

2. 美团猫眼电影android模块化实战总结

这篇详尽地记述了猫眼项目的模块化整个过程,并没有完全照搬网络上的做法,而是分析对比,采用更适合自己项目的方法。

关键设计如图:

路由架构:

希望这篇组件化开发文集对要做项目组件化的同学有帮助!

正文到此结束了~

等等,先别走!戳我看详情 参与活动可以培养自己的好习惯,还能拿到「码个蛋」IP系列专属奖品,速度要快...

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-10-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 码个蛋 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档