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

栏目: IOS · Android · 发布时间: 7年前

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

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

一. 前言

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

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

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

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

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

二. 文章系列

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

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

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

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

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

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

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

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

下图为组件示意:

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

下图为模块示意

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

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

4.  浅谈Android组件化

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

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

5.  Android 模块化探索与实践

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

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

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

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

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

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

三. 项目实践系列

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

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

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

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

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

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

关键设计如图:

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

路由架构:

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

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

正文到此结束了~

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

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

今日问题:

聊聊在组件化开发路上遇到过的坑?

留言格式:

打卡 x 天,答:xxx。

最后告诉你一个小技巧:

只需3步,你将不会错过任何一篇文章!

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

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


以上所述就是小编给大家介绍的《Android 项目开发之组件化知多少?》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

JavaScript & jQuery

JavaScript & jQuery

David Sawyer McFarland / O Reilly / 2011-10-28 / USD 39.99

You don't need programming experience to add interactive and visual effects to your web pages with JavaScript. This Missing Manual shows you how the jQuery library makes JavaScript programming fun, ea......一起来看看 《JavaScript & jQuery》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具