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