一、基础原理与系统架构
组件化与插件化
1. 组件化架构
组件化是将应用拆分为多个独立组件的架构模式。每个组件可以独立开发、测试和部署,最终通过某种方式集成到主应用中。
核心特点:
- 模块解耦:组件之间通过接口通信,减少依赖
- 独立开发:支持团队并行开发不同组件
- 代码复用:公共功能可作为基础组件被复用
- 增量编译:提高开发效率
2. 插件化架构
插件化是更高级的组件化形式,它允许应用在运行时动态加载和卸载模块。插件通常以独立 APK 形式存在,不需要预先安装。
核心特点:
- 动态加载:运行时加载插件 APK
- 独立发布:插件可以独立更新
- 减小主包体积:核心功能之外的功能以插件形式存在
- 灵活扩展:支持按需加载功能
3. 常用开源框架
- 组件化框架:ARouter、CC、ModularizationArchitecture
- 插件化框架:Atlas、RePlugin、VirtualAPK、DynamicAPK