实战企业级项目践行App重构之路
【课程介绍】随着企业级App功能不断累加强大,App代码质量下降、设计缺陷、难以维护、迭代困难等问题越来越突出,App的重构迭代已经成为Android工程师急需解决的核心工作内容。本课程还原一线互联网公司App所经历的重构过程,基于模块化,以组件化重构和插件化重构为核心,让大家掌握一线互联网公司App的最新架构和技术,并且能够解决重构过程中碰到的所有难题,更有助于拿到大厂offer。
【课程目录】
- 第1章 课程导学与准备工作本章主要介绍为何要带大家学习一线互联网公司的app重构过程,讲解学习阶梯和实现思路,之后会为大家介绍本课程内容具体安排,最后给出如何学好这门课程的一些学习建议。希望大家都能通过这门课程,学有所成,学有所归。…
- 1-1 课前必读(不看会错过一个亿)
- 1-2 课程介绍及学习指导
- 第2章 企业级App重构之路本章将带你分析一线互联网公司app在功能越来越多,体积越来越大的过程中碰到的一系列难题,并带大家了解不同阶段的重构能够解决的问题,以及解决不了的问题,从而让大家明白,为什么一线互联网公司的app都经历模块化,组件化,插件化的重构。…
- 2-1 工程结构概述
- 2-2 传统工程结构解析
- 2-3 组件化工程结构解析
- 2-4 插件化工程结构解析
- 2-5 工程结构总结
- 第3章 登录业务组件化重构本章重点带领大家通过对App已有登录功能的组件化重构,让大家了解如何将一个现有的登陆业务重构为一个独立的登陆组件,并通过合理的接口定义与其它功能模块通信。通过本章的学习,让大家对组件化的重构有一个整体的认识。…
- 3-1 组件化最终目标及思路
- 3-2 登录模块组件化概述
- 3-3 登录代码走读
- 3-4 Login模块创建及初始化
- 3-5 Login模块代码迁移
- 3-6 Login模块资源迁移
- 3-7 arouter官方文档解析
- 3-8 LoginService接口定义
- 3-9 LoginServiceImpl接口实现
- 3-10 主工程调用LoginService接口
- 3-11 本章小结
- 第4章 首页功能模块组件化重构本章通过对实战项目首页功能分析,将首页功能模块从原有项目中拆分出独立的首页业务组件,并对外定义接口完成与其它功能模块的相互通信。首页是整个app最核心和复杂的页面,通过将首页相关功能组件化,让大家能够学会如何合理的拆分业务功能为独立的组件。…
- 4-1 首页功能模块组件化重构核心内容
- 4-2 首页功能模块核心代码走读
- 4-3 首页功能模块代码迁移
- 4-4 首页功能模块资源迁移
- 4-5 首页功能模块对外接口定义
- 4-6 首页功能模块组件化重构学习小结
- 第5章 音乐播放模块组件化重构本章我们将整个实战项目最核心的音乐播放相关功能进行组件化重构,重点为大家演示如何将项目中已有的库工程组件化为一个独立的组件,通过本章的学习,同学们可以更深入的了解安卓library与组件的区别,加深对组件的认识。…
- 5-1 音乐播放模块组件化重构核心内容
- 5-2 音乐播放模块核心代码走读
- 5-3 音乐播放模块对外接口定义
- 5-4 音乐播放模块接口实现
- 5-5 音乐播放模块与外界通信
- 5-6 音乐播放模块组件化重构学习小结
- 5-7 组件化重构阶段总结
- 第6章 插件化重构及宿主工程插件化本章将进入我们插件化重构阶段,本章会为大家讲解插件化相关的核心概念并对我们的宿主工程进行插件化的重构,让大家完成我们插件化的第一步,通过本章的学习,大家可以对插件化有更深入的了解并且让大家掌握如何将一个普通app工程重构为一个可接入插件的宿主工程。…
- 6-1 插件化相关概念及技术分析
- 6-2 宿主工程插件化重构核心内容
- 6-3 插件化涉及常用技能点分析
- 6-4 Replugin宿主工程接入
- 6-5 宿主工程接入Replugin插件框架
- 6-6 宿主工程插件化学习小结
- 第7章 登录组件插件化重构本章将我们组件化重构阶段生成的登录组件继续插件化重构为一个登陆插件,通过本章学习,大家能够掌握组件与插件的区别,以及掌握一个插件如何集成到宿主工程中去运行并学会插件间如何启动activity及通过AIDL通信。
- 7-1 登录组件插件化重构核心内容
- 7-2 插件化重构流程及思路分析
- 7-3 将原库工程升级为app工程
- 7-4 登录组件接入Replugin插件化框架
- 7-5 生成登录插件apk
- 7-6 宿主工程启动登录插件Activity
- 7-7 插件化工程广播发送和接收
- 7-8 LoginPluginConfig管理插件信息
- 7-9 插件间AIDL接口通信(上)
- 7-10 插件间AIDL接口通信 (下)
- 7-11 登录组件插件化重构学习小结
- 第8章 首页组件插件化重构本章我们将首页组件插件化重构为一个可独立运行的插件,并集成到宿主工程中去使用,通过本章的学习,大家能够掌握如何将一个大的插件拆分为更小的插件,从而让我们的插件更加的合理,并解决在插件拆分过程中碰到的过种技术难点,提升大家对android FrameWork的认识。…
- 8-1 首页组件插件化重构核心内容
- 8-2 首页组件升级为application
- 8-3 首页application接入插件化框架
- 8-4 首页插件化重构代码优化
- 8-5 首页Mine功能插件化重构
- 8-6 跨插件Fragment调用(上)
- 8-7 跨插件Fragment调用(下)
- 8-8 首页Disvoery功能插件化重构
- 8-9 首页Friend功能插件化重构
- 8-10 首页组件插件化重构学习小结
- 第9章 音乐播放组件插件化重构本章我们将音乐播放组件重构为一个插件apk, 重点解决前台service在插件化重构过程中遇到的问题,以及不同插件间View的相互调用,通过本章的学习,我们能够学会如何在插件间启动service及跨插件调用View。
- 9-1 音乐播放组件插件化重构核心内容
- 9-2 音乐播放组件核心代码分析
- 9-3 音乐播放组件升级为插件
- 9-4 MusicPlayerActivity代码适配插件化重构
- 9-5 BottomMusicView插件化重构(上)
- 9-6 BottomMusicView插件化重构(下)
- 9-7 音乐播放模块对外AIDL通信
- 9-8 前台service插件化升级适配
- 9-9 音乐播放组件插件化重构学习小结
- 第10章 插件化重构启动优化本章我们重点进行插件化启动专项优化,解决在插件化的重构过程中,由于插件的引入导致的启动变慢,白屏等问题,并让宿主工程对外提供AIDL接口,供其它插件使用,并将工程中所有library上传maven私服,加快app整体编译时间。…
- 10-1 本章概述
- 10-2 Loading组件插件化重构
- 10-3 启动白屏问题解决(上)
- 10-4 启动白屏问题解决(下)
- 10-5 宿主工程AIDL接口
- 10-6 二维码功能插件化重构
- 10-7 maven私服搭建
- 10-8 maven私服接入
- 10-9 插件化重构启动优化学习总结
- 第11章 App动态更新本章我们重点讲解与前面几章内容都不同的外置插件,通过加载外置插件为我们的app添加动态更新的能力,让我们的app可以根据用户不同的行为,动态加载不同的业务插件,也可以通过动态加载不同版本的远程插件让app拥有热更新的能力。…
- 11-1 App动态更新核心内容
- 11-2 动态更新原理
- 11-3 插件管理及信息获取
- 11-4 动态加载外置插件(上)
- 11-5 动态加载外置插件(下)
- 11-6 外置插件下载功能(上)
- 11-7 外置插件下载功能(中)
- 11-8 外置插件下载功能(下)
- 11-9 外置插件更新功能
- 11-10 插件下载更新逻辑优化(上)
- 11-11 插件下载更新逻辑优化(下)
- 11-12 插件化全面总结
- 第12章 Replugin源码解读本章我们通过深入分析Replugin插件化框架的源码,在我们已经熟练使用的前提下,通过分析框架源码,让大家从源码的实现层面,彻底明白Replugin是如何启动插件中的Activity,Service, BroadcastReceiver及ContentProvider和多进程的实现原理,加深对插件化原理的了解并突破面试中的此部分考点。…
- 12-1 Replugin源码解读
- 12-2 RepluginClassLoader源码分析(上)
- 12-3 RepluginClassLoader源码分析(下)
- 12-4 Replugin启动插件中Activity源码分析(上)
- 12-5 Replugin启动插件中Activity源码分析(中)
- 12-6 Replugin启动插件中Activity源码分析(下)
- 12-7 Replugin启动插件中Service源码分析
- 12-8 Replugin自定义进程源码分析
- 12-9 Replugin插件广播注册接收源码分析
- 12-10 Replugin启动插件ContentProvider源码分析
- 12-11 Replugin gradle插件源码分析
- 第13章 课程全面总结本章我们带领大家全面回顾我们本次实战课程所讲解的所有内容,为大家提炼和总结出我们课程最核心的内容,并结合课程内容教大教如何写好自己的简历,让你的简历更加出众,助力你早日拿到大厂offer!
- 13-1 课程全面总结