必看12

熟练组件化、模块化、路由 ARouter 使用与原理;

一、基础概念

1、什么是模块化?

答案

把整个项目按业务 / 功能拆分成多个独立 module,

比如首页、我的、订单、登录等;

代码分层、职责拆分,方便多人协作、解耦、复用。

2、什么是组件化?

答案

在模块化基础上,让每个业务模块可以单独编译、独立运行成 App

开发时单个组件可单独调试,打包时再合并成一个主 App。

组件化 = 模块化 + 可独立工程化

3、模块化和组件化区别

答案

  1. 模块化:只能作为 Library 依赖,不能单独运行;
  2. 组件化:既可作为 Library 被依赖,也可独立 Application 单独运行;
  3. 组件化更适合大型项目、并行开发、按需编译提速。

4、为什么要做组件化 / 模块化?

答案

  1. 业务解耦,模块间低依赖;
  2. 多人团队并行开发互不干扰;
  3. 单个模块独立编译,编译速度快
  4. 业务可按需裁剪、插件化扩展;
  5. 便于维护、复用、单元测试。

二、组件化核心问题

5、组件化最大难点是什么?

答案

各业务组件不能直接相互依赖,否则又高耦合;

需要路由框架实现跨组件页面跳转、通信、解耦。

6、组件化怎么实现互相通信、页面跳转?

答案

ARouter 路由框架 ;通过路径字符串跳转,不直接依赖目标类,实现完全解耦。

相关推荐
私人珍藏库5 小时前
【Android】Soul v5.86.0 内置模块版
android·app·工具·软件·多功能
千里马学框架6 小时前
aosp新增窗口层级 Type 完整实现方案(有源码)-wms需求和面试题
android·智能手机·架构·wms·aaos·车机
峥嵘life11 小时前
Android 蓝牙设备连接广播详解-2026
android·python·学习
MusingByte14 小时前
别再裸用 Claude Code 了!安卓开发者必装 13 个官方推荐插件,效率翻 3 倍省 70% token
android
_李小白14 小时前
【android opencv学习笔记】Day 29: 滤波算法之Sobel 边缘检测
android·opencv·学习
Dxy123931021615 小时前
Python 操作 MySQL 事务:从入门到避坑
android·python·mysql
峥嵘life17 小时前
Android getprop 属性限制详解:User 版本属性获取问题分析
android·开发语言·python·学习
一航jason17 小时前
Speed Tools:一套低侵入的 Android 插件化 + 动态换肤 + 字体切换框架
android·插件化·组件化·换肤
李斯维18 小时前
Jetpack 可观察数据容器 LiveData 的入门与基础使用
android·android jetpack
问心无愧051319 小时前
ctf show web入门261
android·前端·笔记