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

45 阅读1分钟

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

一、基础概念

1、什么是模块化?

答案

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

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

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

2、什么是组件化?

答案

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

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

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

3、模块化和组件化区别

答案

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

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

答案

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

二、组件化核心问题

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

答案

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

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

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

答案

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