为了彻底搞懂组件化,肝了十几家大厂的组件化项目实战,面试再也不怕被问到项目经验了!

先说模块化

按照惯例,讲组件化之前肯定是要提一嘴模块化的。毕竟有许多相通之处。

对于模块化,相信大家伙儿都已经非常熟悉了,简单来说就是将项目中常用到的UI、网络请求、第三方库、数据库操作等Application部分封装成基础模块。或者将大的项目拆分为多个小的业务模块,这些业务模块又依赖于公共基础模块的开发方式。
更宏观上,这些不同的模块,又是一个整体,打包成一个完整的项目。

模块化的优势

模块化有哪些好处呢?

  • 复用
    首先,基础模块,可为业务模块所复用;
    其次,子业务模块,可为父业务模块,甚至不同的项目所复用。
  • 解耦
    降低模块间的耦合,避免出现一处代码修改,牵一发而动全身的尴尬局面。
  • 协同开发
    项目越来越大,团队人数越来越多,模块化开发可在尽量解耦的情况下,使不同的开发人员专注于自己负责的业务,同步开发,显著提供开发效率。

模块化的弊端

任凭模块化做得多么好,还是跳不出组合在单一项目下的范围,模块化开发渐渐出现了以下的问题:

  • 代码量越来越大,编译速度越来越慢,极大的降低了开发效率;
  • 模块越来越多,不可避免地产生越来越多且复杂的耦合;
  • 团队人数越来越多,却要求开发人员了解与之业务相关的每一个业务模块;

那怎样解决模块化开发的这些弊端呢?

当然是组件化!不然我下面扯个什么玩意儿?

组件化

组件化开发可以说是如今Android中高级开发工程师的必备技能。能有效解决上述模块化开发中的弊端。
特别需要强调的是,组件化真不难,还没有上车的小伙伴完全不用担心。
入门之后你就会爱的不可自拔!

优势

组件化解决了模块化开发的所有痛点

  • 极大提高工程编译速度
  • 业务模块解耦,有利于多人团队协作开发
  • 组件化是功能重用的基石

组件化上车

模块化开发其实真的不难,在此给大家准备了一份腾讯T4.1大佬内部员工无痛上手Android组件化开发手册。知乎已上千获赞,现在免费分享给大家,别忘了给文章点个赞哦~

以下【Android组件化入门进阶学习笔记】已上传在我的GitHub免费下载,记得给个Star哦~

第一章:Android组件化初识(入门)

  • 组件化和模块化的区别
  • 组件化和插件化的区别
  • 组件化开发的优势
  • 业务逻辑层
  • 组件化开发要遇到的问题
  • 从组件化实战来解决问题
  • Android组件化基础

第二章:Android组件化初探(上手实战)

  • 组件化演示案例
    概述
    模块化和组件化
    组件化Demo
    组件application和library动态切换
    ……
  • WanAndroid APP 组件化项目实战附demo
    版本更新
    效果图
    主要功能
    项目目录结构
    主要开源框架

第三章 大厂组件化架构演练(架构进阶)

智行APP
从智行 Android 项目看组件化架构实践
组件化调整的原因和目标
组件化架构调整的整体规划
组件化架构调整中遇到的一些问题
……

得到 App
Android彻底组件化demo发布
JIMU使用指南
组件化拆分的感悟
……

微信 App
微信Android模块化架构重构实践
微信Android架构历史
为何再次重构微信
……

蘑菇街 App
蘑菇街 App 的组件化实现方式
组件生命周期管理
壳工程
遇到的问题
持续集成
周边设施
……

爱奇艺 App
基于Service的IPC通信
组件化跨进程通信的核心诉求
Andromeda
架构分析
……

美团 App
外卖客户端容器化架构的演进
美团外卖容器化架构全景图
外卖跨端容器建设
外卖页面容器建设
外卖容器化架构的衡量指标
外卖容器化架构的监控运维
外卖容器化架构的发布能力
……

  • 美团Android组件化方案及组件消息总线modular-event实战

  • 美团Android消息总线的演进之路:用LiveDataBus替代RxBus、EventBus

  • 携程App

  • 支付宝 App

  • ……

以上就是腾讯大佬熬夜整理的209页Android组件化强化实战资料免费分享给大家,需要的朋友可以在我的GitHub免费下载,记得给个Star哦

快速入手通道(点这里)直接下载。

整理不易,觉得有帮助的朋友可以帮忙点赞分享支持一下小编~

你的支持,我的动力;祝各位前程似锦,offer不断!!!

猜你喜欢

转载自blog.csdn.net/zzz777qqq/article/details/112562671