Android开发者们都需了解的组件化开发知识点!!!

Posted 冬天的毛毛雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android开发者们都需了解的组件化开发知识点!!!相关的知识,希望对你有一定的参考价值。

以前的android开发大多用的中心化管理思想,将相同的资源集中进行管理。但随着项目的发展,单一模块开发弊端渐显:集中管理的资源越来越多,多人开发也越来越麻烦,时常牵一发而动全身。

尤其是在大公司或者是大项目,这些弊端的不良影响会被扩大几倍。在开发过程中,你是不是也经常遇到以下情况:

  • 项目模块又多又复杂,编译一次要5-10分钟?简直太慢不能忍?
  • 改了一行代码 或只调了一点UI,就要run整个项目,再忍受一次10分钟?
  • 合代码经常发生冲突
  • 别人改了自己模块的代码?很不爽?
  • 做一个需求,发现还要去改动别人很多模块的代码?
  • 别的模块已实现的类似功能,自己要用只能去复制一份代码再改改?
  • “这个不归我负责,我不管”,责任范围不明确?
  • 只做了一个模块的功能,但改动点很多,就要完整回归测试?
  • 做了个需求,但不知不觉导致其他模块出现bug?

这种情况下,如果我们利用组件化开发搭好框架,那么一切都将迎刃而解。组件化虽然很好用,但实战过程中还是有很多难点:
1.业务组件,如何实现单独运行调试?
2.业务组件间没有依赖,如何实现页面的跳转?
3.业务组件间没有依赖,如何实现组件间通信/方法调用?
4.业务组件间没有依赖,如何获取fragment实例?
5.业务组件不能反向依赖壳工程,如何获取Application实例、如何获取Application onCreate()回调(用于任务初始化)?

如何学习组件化

现给大家分享一份字节大佬整理的内部笔记。这位字节的大佬主导开发过多个采用组件化架构的APP项目,有对老项目进行重构的,也有一开始就采用组件化架构的新项目。大佬熬夜一个星期,把积累的经验和踩的坑都进行了总结,整理成了长达209页的学习文档,引得各路大神推荐,大家如需参考学习可以点击下方小卡片进行访问查阅。

正准备面试 Android 开发岗的朋友也需要注意一下,组件化这个知识是所有大厂都会重视的点,要好好做准备。
学习文档总共分为三部分
第一章 Android组件化初识
第二章 Android组件化初探
第三章 大厂APP的架构演化

第一章

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

想参考学习可以点击下方小卡片进行访问查阅。

  • 携程App
  • 支付宝 App
  • 有赞
  • ……

以上是关于Android开发者们都需了解的组件化开发知识点!!!的主要内容,如果未能解决你的问题,请参考以下文章

Android开发者需要了解的芯片知识

Android开发者需要了解的芯片知识

Android 开发者们都在关心的事儿

每个Android 都应必须了解的多线程知识点~

组件化封装思想实战Android App

组件化封装思想实战Android App视频课程