移动端架构师
移动端架构师

亲历日活千万级APP全流程开发
掌握大小厂通杀的架构技术,快速突破个人职业瓶颈
成为技术强+思维深+视野广 的P7级移动端架构师

〖课程目录〗:

  • 阶段一:Kotlin x Java打造 UI 通用组件
  • 第1周   走进移动端架构师
  • 本周明确移动端架构师需要具备的技术栈,在架构中大型APP及技术选型时有哪些方法论可以遵循,带你认识讲师团为课程量身定制的开发套件,让我们一起通过“好物”项目的HiLog战役燃起架构师成长之路吧
  • 课程安排:
  • 1、了解移动端架构师需要具备的技术栈与能力
    2、如何从0开始架构一个中大型APP
    3、如何做好项目的技术选型
    4、认识为“好物”项目量身定制的开发套件
    5、HiLog库疑难点分析与架构设计
    6、HiLog基础框架搭建
    7、HiLog堆栈信息打印与日志格式化功能实现
    8、基于HiLogPrinter实现日志可视化模块
  • 第2周   通用UI组件开发与基础框架设计
  • 不做搬运工,带你造轮子。利用两周时间带你为“好物”项目架构一套高可用高扩展的Android通用UI组件,本周完成HiTabBottom和HiTabTop组件的架构设计和开发,掌握APP基础框架结构设计
  • 课程安排:
  • 1、HiTabBottom组件疑难点分析与架构设计
    2、HiTabBottom的单Tab组件封装
    3、HiTabBottomLayout封装与应用
    4、APP基础框架结构设计
    5、基于HiTabBottom实现APP底部导航框架
    6、Fragment常见问题解决
    7、HiTabTop架构设计与功能实现
    8、HiTabTop自动滚动功能分析与实现
  • 第3周   高级UI组件定制与解耦设计
  • 框架设计服务于使用者,以移动端高频技术点下拉刷新和广告位为例设计实现项目“好物”的HiRefresh和HiBanner组件,并教会你如何从需求出发架构并实现轻量级高扩展的组件,帮你弥补造轮子中的盲区
  • 课程安排:
  • 1、打造下拉刷新HiOverView视图
    2、实现下拉刷新HiRefreshLayout
    3、HiRefreshLayout调试完善
    4、HiBanner架构设计与ViewPager定制
    5、打造高通用的HiBannerAdapter
    6、实现HiBanner的高度定制
    7、HiBannerDelegate封装与指示器HiIndicator定制
  • 第4周   Android必备Kotlin核心技术
  • 架构师该如何完成到Kotlin转变?如何快速掌握Kotlin?课程会面向未来Kotlin,使用新版解锁Kotlin开发核心知识体系,使用Kotlin重构“好物”HiCircleIndicator
  • 课程安排:
  • 1、以架构师角度认识Kotlin
    2、Kotlin开发环境搭建技巧
    3、Kotlin必备基础
    4、Kotlin方法与Lambda表达式
    5、Kotlin方法进阶
    6、Kotlin构造方法与继承
    7、深入理解Kotlin抽象类与接口
    8、深入理解Kotlin泛型和注解
    9、让人爱不释手的Kotlin扩展(Extensions)技术探秘与应用
    10、Kotlin扩展案例
    11、Kotlin重构HiCircleIndicator
    12、Kotlin实用技巧
  • 第5周   Android UI核心组件剖析与实战
  • 本周以高频核心组件实现原理为入口,带你学习Google Android团队如何做架构设计,最后会借助“好物”项目HiDataItem的封装让你领悟如何利用设计原理,封装出高易用的UI组件。
  • 课程安排:
  • 1、从开机到SystemServer进程及服务创建流程分析【高能预警】
    2、Launcher应用启动之进程启动
    3、ActivityThread源码分析【见微知著】
    4、View树测绘流程分析
    5、页面刷新机制分析
    6、手势分发来源
    7、Activity任务栈管理
    8、FragmentTransaction事务执行流程分析【见微知著】
    9、Fragment页面重叠与新版懒加载
    10、RecyclerView家族图谱分析
    11、RecyclerView源码解析【见微知著】
    12、RecyclerView优化之回收复用机制探秘
    13、高易用HiDataItem组件封装之需求分析
    14、高易用HiDataItem组件封装
  • 第6周   Android 导航架构探秘
  • 本周以Navigation和ARouter路由组件为入口,如何做好技术选型日后不返工,通过全面性原理分析进阶改造带你掌握如何设计端内路由,基于ARouter完成“好物”项目的登录拦截与全局降级策略
  • 课程安排:
  • 1、架构师该如何选择导航框架
    2、对比Jetpack Navigation和ARouter的差异
    3、架构师如何做好技术选型
    4、Jetpack Navigation架构解析
    5、Jetpack Navigation原理探秘
    6、Jetpack Navigation自定义注解处理器
    7、Jetpack Navigation进阶改造
    8、ARouter的配置用法
    9、ARouter编译时原理分析
    10、ARouter运行时原理剖析
    11、需求疑难点分析及成果展示
    12、基于ARouter实现登录拦截与全局降级策略
  • 阶段二:解锁Android高阶技能,探秘实战Jetpack
  • 第7周   线程与线程池核心技术
  • 本周非常硬核,从多线程通信、并发安全、并发流程控制、线程池任务调度和线程复用原理,到手写逆向还原协程实现原理,再到协程进阶实战,完成“好物”项目的多线程操作框架HiExecutor封装
  • 课程安排:
  • 1、多种线程创建方式与对比
    2、线程优先级核心及应用技巧
    3、线程状态剖析及四种方法应用
    4、线程间通信核心
    5、线程安全的本质
    6、线程安全之原子类
    7、线程安全之Synchronized
    8、线程安全之ReentrantLock案例详解
    9、线程安全之共享锁排他锁及锁的设计优化
    10、线程池实现原理剖析
    11、线程池源码分析
    12、线程池中线程复用原理
    13、简洁易用的多线程操作框架HiExecutor封装
    14、探秘Kotlin协程机制
    15、Kotlin协程挂起与恢复原理,逆向剖析还原
    16、Kotlin协程应用
    17、架构师如何做多线程优化
  • 第8周   Android网络编程进阶
  • 本周带你重新认识网络编程核心技术,解锁最新版Retrofit架构源码,为“好物”项目手写封装简洁易用低耦合的网络层框架HiRestful,实战接口拦截与路由处理,完成登录、注册、个人中心模块设计开发
  • 课程安排:
  • 1、Android网络编程核心技术
    2、HiRestful设计思想分析
    3、HiRestful之方法解析器
    4、HiRestful之拦截器派发
    5、从源码到原理剖析Retrofit核心技能 【见微知著】
    6、为HiRestful添加Retrofit支持
    7、自定义View之InputItemLayout
    8、登录模块开发
    9、注册模块开发
    10、接口拦截与路由处理
    11、个人中心模块开发
  • 第9周   架构首页模块
  • 本周开始将带你完成“好物”项目首页架构及开发,领略RecyclerView分页及通用列表的风骚玩法,实现顶部导航栏与内容区域联动,掌握数据绑定性能调优等进阶技能
  • 课程安排:
  • 1、HiAdapter搭建首页架构需求及疑难点分析
    2、HiAdapter能力升级
    3、HiRecyclerView风骚实现分页预加载
    4、基于HiRecyclerView架构通用列表
    5、首页模块导航与内容需求及疑难点分析
    6、首页模块顶部导航栏与内容区域联动
    7、基于约束布局ConstraintLayout搭建列表Item
    8、首页模块列表数据绑定
    9、首页列表性能优化
    10、用户体验优化之沉浸式
  • 第9+周   架构首页分类模块
  • 本周将带你为“好物”项目设计出灵活易用高拓展的HiSlider组件,实现分类模块,设计出HiDebugTool调试模块,最终把轮子们高效组合到一起完成可复用的首页模块
  • 课程安排:
  • 1、侧边导航菜单HiSlider样式定制
    2、HiSlider数据适配
    3、SpanSizeLoopUp不同寻常实现分组思路
    4、SpanSizeLookUp不同寻常实现分组效果
    5、ItemDecoration实现分组标题
    6、基于HIAbsListFragment快速构建商品列表页
    7、设计开发者支撑工具HiDebugTool并支持Https网络调试能力
    8、Https抓包原理与弱网络场景模拟
  • 第10周   解密Jetpack工具库核心组件
  • 剖析Jetpack核心组件实现原理, 掌握Jetpack最新架构,领略官方架构设计之美,把你从内存泄漏、空指针等问题中解脱出来。基于Room,带你为“好物”项目设计开发一款离线缓存框架
  • 课程安排:
  • 1、Jetpack架构组件库解析
    2、Lifecycle组件架构实现原理
    3、LiveData组件架构实现原理
    4、实现不用反注册,不会内存泄露的消息总线
    5、ViewModel实例复用原理新解析
    6、SavedState组件数据存储与复用原理全解析
    7、Room架构组件原理解析
    8、Room+LiveData监听数据库数据变更刷新页面原理分析
    9、基于Room封装APP离线缓存框架HiStorage
    10、基于HiStorage拓展HiRestful实现接口缓存能力
    11、首页缓存适配和ViewPager刷新调优
    12、基于LiveData实现登陆结果通知和账户信息管理
  • 第11周   架构商品详情模块
  • 本周项目开启爬坡过坎阶段,详情页模块纷繁复杂,架构师要能化繁为简,本周不仅带你高效完成“好物”项目的详情模块开发任务,还将传授你如何实现流畅,解耦等极致效果
  • 课程安排:
  • 1、商品详情模块架构分析
    2、搭建详情页整体结构
    3、基于HiBanner+HiDataItem实现列表主图轮播
    4、基于Chip组件实现商品评价模块
    5、店铺模块疑难点分析与开发
    6、商品属性模块疑难点分析与开发
    7、商品相册与推荐商品模块疑难点分析与开发
    8、商品收藏与标题栏滑动渐变
  • 第12周   Android消息机制与类加载
  • 本周将带你全面掌握Android消息分析机制,深入理解ClassLoader类加载机制奥秘,Tinker框架实现“好物”项目的热修复,掌握市场主流热修复实现原理
  • 课程安排:
  • 1、Android消息机制之消息生产
    2、Android消息机制之消息消费
    3、Android消息机制之ThreadLocal
    4、Android类加载之双亲委派
    5、Android类加载之高阶面试题与源码分析
    6、走进Android热修复世界
    7、Tinker的实战应用
    8、Tinker实现原理之补丁全量合成流程分析
    9、Tinker实现原理分析之动态加载dex实现热修复流程分析
  • 阶段三:主流架构演进与项目架构改造
  • 第13周   玩转Kotlin x Java 设计模式
  • 本周将进行Kotlin与Java设计模式心法修炼,类比Java设计模式, 快速理解掌握如何利用设计模式进行APP架构的设计改造,实现利用建造者模式扩展“好物”项目的指示器组件及通知列表模块
  • 课程安排:
  • 1、走进Kotlin x Java 设计模式
    2、深入理解Kotlin 与 Java 单例模式
    3、别有洞天的Kotlin装饰器模式
    4、深入理解Kotlin 与 Java 建造者模式
    5、深入理解Kotlin 与 Java 适配器模式
    6、如何利用设计模式进行App架构的设计
    7、通知列表接口系分与资源获取工具HiRes封装
    8、通知列表模块实现
  • 第14周   主流架构模式演进之路
  • 主流架构模式修炼, 全面掌握MVC,MVP,MVVM开发模式演进,并使用主流的MVVM模式重构“好物”项目的首页模块, 从架构师角度带你解锁模块化,组件化模块化,组件化,工程化,插件化,容器化开发模式
  • 课程安排:
  • 1、如何理解架构设计
    2、MVC和MVP分析及手写实现
    3、传统MVVM分析及手写实现
    4、Jetpack下的MVVM及手写实现
    5、DataBinding高频用法及传经送宝
    6、基于MVVM模式重构首页模块
    7、从架构师角度理解模块化、组件化
    8、单一工程、模块化、组件化、插件化及容器化分析
    9、基于模块化重构工程结构
    10、从插件化到回归Android标准化
    11、组件化实战封装HiNavigationBar
    12、HiNavBar设计及实现思路分析
    13、HiNavBar实现动态添加按钮&解决标题溢出
  • 第15周   主流架构实战搜索模块
  • 本周将基于组件化方式为“好物”项目封装高易用高扩展HiSearchView组件,基于MVVM设计搭建搜索模块架构,并实现搜索模块的调优
  • 课程安排:
  • 1、高易用高扩展搜索组件HiSearchBar封装
    2、HiSearhView之思路讲解与初始态实现
    3、HiSearhView之关键词实现
    4、搜索模块功能细分与架构搭建
    5、基于MVVM实现实时搜索与商品搜索状态
    6、历史搜索状态设计与实现
  • 第16周   IOC架构设计
  • 本周将从Hilt核心实现原理展开,传授你如何设计一款优秀的IOC依赖注入框架,减少模板代码,提升整个团队开发效率,为“好物”项目实现基于MVVM+Hilt收货地址模块,封装高易用城市选择组件
  • 课程安排:
  • 1、走进IOC架构世界
    2、Hilt DI库高频用法传经送宝
    3、Hilt运行时依赖注入实现原理分析
    4、AmountView通用计数器组件设计与实现
    5、设计与实现下单模块
    6、拓展HiRestful支持PUT,DELETE请求
    7、基于Hilt实现收货地址模块
    8、城市选择器组件结构设计实现思路分析
    9、城市数据预处理与持久化
    10、基于HiStorage实现城市选择器组件
    11、地址列表页设计与实现
    12、城市选择组件HiCity封装
  • 第17周   构建与打包能力
  • 本周将从如何高效的构建多渠道包,到实现Gradle插件,带你领略Gradle的魅力,完成基于Jenkins实现持续集成与自动打包,逐步解锁构建打包的核心技能
  • 课程安排:
  • 1、如何高效的构建渠道包?
    2、Gradle项目构建基础
    3、Gradle项目构建之Task任务
    4、Gradle 插件开发之Transform
    5、Javassist字节码插桩技术实战
    6、发布Gradle插件到JCenter
    7、基于Jenkins实现持续集成与自动打包、发布及通知
    8、Android library 发布与JCenter
    9、v1、v2签名原理
    10、直面底层还原apk打包流程
    11、APK安全的攻与守
  • 阶段四:混合架构设计与开发
  • 第18周   走进Flutter开发
  • Flutter是考察一个架构师技术广度及对新技术敏感度的重要依据,本周带你快速掌握Flutter开发核心技能,为今后的技术选型提供支撑,最后使用Flutter带你实现“好物”的网络层框架及推荐模块
  • 课程安排:
  • 1、架构师该如何高效的学习Flutter
    2、Flutter开发环境搭建及常见问题
    3、走进Flutter的Widget世界
    4、如何进行Flutter布局开发
    5、轻松掌握Flutter调试技巧
    6、基于http库封装Flutter网络层框架
    7、基于dio扩展网络层框架并编写单元测试
    8、推荐模块接口系分与Dao层设计
    9、推荐模块结构框架搭建
    10、推荐模块Item实现
  • 第19周   Flutter混合架构原理剖析与应用
  • 深入Flutter进阶内容,作为架构师还要了解Flutter框架原理,掌握Flutter和Native之间的通信及路由架构的处理,本周最后带你打造“好物”项目的通信架构及推荐模块的集成
  • 课程安排:
  • 1、Flutter框架和原理剖析
    2、探析Flutter渲染机制之三棵树
    3、如何在原有的项目中集成Flutter?
    4、复杂场景下的Flutter混合架构设计【秒开性能0损耗】
    5、Flutter与Native通信原理剖析
    6、基于MethodChannel实现Flutter与Naitive通信架构HiFlutterBridge
    7、Flutter推荐模块集成
    8、基于Flutter实现主流的首页架构
  • 第20周   Flutter实战应用与性能优化
  • 本周将基于Flutter来实现“好物”项目的收藏模块,剖析Flutter嵌入Native组件的实现原理与应用,之后会带你精研Flutter的性能调优以及对Flutter热更新方案的探索
  • 课程安排:
  • 1、Flutter侧鉴权功能实现与登录态同步
    2、收藏模块接口系分与Dao层设计
    3、收藏模块结构框架搭建
    4、收藏模块Item实现
    5、复杂场景下Flutter嵌入Native组件实战
    6、Flutter Native组件的通信功原理与实现
    7、playground模块设计
    8、Flutter性能调优
    9、Flutter引擎加载机制与热更新方案探索
    10、Flutter热更新方案实现与应用
  • 第21周   走进RN开发
  • RN作为移动端跨平台另一个核心技术, 繁荣的社区生态提供了成熟的最佳实践,本周带你进入混合开发框架RN的学习,带你使用RN设计开发“好物”项目的浏览历史模块
  • 课程安排:
  • 1、架构师该如何高效的学习RN
    2、RN开发环境搭建及常见问题
    3、RN自定义组件封装
    4、轻松掌握RN调试技巧
    5、基于fetch+promise库封装RN网络层框架
    6、浏览历史模块接口系分与Dao层设计
    7、浏览历史模块结构框架搭建
    8、浏览历史模块Item实现
    9、走进RN社区和其常见组件
  • 第22周   RN混合架构原理剖析与应用
  • 深入RN进阶内容,了解框架原理,掌握RN和Native之间的通信,路由架构的处理, 性能优化以及疑难杂症的处理。本周最后带你使用RN封装“好物”项目的通信架构HiRNBridge,完成商品模块集成
  • 课程安排:
  • 1、RN框架和原理剖析
    2、如何在原有的项目中集成RN?
    3、RN混合架构开发实战技巧【传经送宝】
    4、RN与Native通信原理剖析
    5、基于NativeModule实现RN与Native通信架构HiRNBridge
    6、RN历史浏览模块集成
    7、RN引擎预加载管理框架开发
    8、Native UI组件开发实战
    9、Native UI组件的事件通信指南
    10、RN性能调优
  • 阶段五:稳定性及性能调优
  • 第23周   稳定性优化
  • 本周将带你站在架构师角度学会建立长效Code Review机制,提升团队代码质量,开展有效监控,排查Java Crash、Native Crash问题,实践打造“永不”Crash的APP
  • 课程安排:
  • 1、作为架构师该如何提升应用的稳定性?
    2、如何提升应用代码质量?
    3、建立有效的Code Review机制
    4、Crash监控与排查
    5、Java混淆代码还原
    6、如何做好Crash防护来实现一个“永不”Crash的App
    7、Native Crash监控
    8、addr2line堆栈还原
    9、HiDebugTool能力扩展
  • 第24周   性能优化
  • 本周将带你站在架构师角度掌握如何做好应用启动速度优化,页面渲染耗时,页面滑动FPS监控,内存以及网络优化,打造性能极致体验APP
  • 课程安排:
  • 1、性能优化的重要性及意义
    2、启动优化之耗时统计&启动白屏优化
    3、从0到1设计实现异步并发启动框架TaskFlow
    4、TaskFlow筑基之Task任务
    5、TaskFlow合体之Project任务组
    6、TaskFlow灵魂之TaskRuntime调度器
    7、TaskFlow涅槃之TaskRuntime依赖树检查
    8、TaskFlow大乘之TaskFlowManager启动器
    9、页面加载耗时优化实战
    10、页面滑动流畅度FPS优化实战
    11、内存泄漏排查定位
    12、不合理大图检测插件
    13、如何进行APK包大小瘦身
  • 第25周   开发技能拓展
  • 本周将带你实现华为多屏幕手机适配,Android Q黑暗模式适配, 老旧项目AndroidX升级适配,带你剖析Google最新组件化AppBundle架构并掌握权限治理
  • 课程安排:
  • 1、AndroidX升级适配的必要性
    2、如何在老项目中使用AndroidX
    3、升级适配常见问题解决
    4、升级之后如何配置混淆
    5、实战老项目升级适配
    6、折叠屏适配实战
    7、Android Q暗黑模式适配
    8、新一代组件化动态化方案App Bundle使用场景和优势
    9、AppBundle动态交付原理
    10、AppBundle文件结构分析
    11、使用Bundletool测试AppBundle
    12、AppBundle拆分注意事项
    13、架构师必须要掌握的权限治理
  • 阶段六:前后端接口设计与配置中心系统
  • 第26周   后端-DAU超千万的移动端接口设计实现
  • 帮你扫清后端主流技术盲区,扩展架构师技术视野,带你为“好物”项目打造高可靠高性能的移动端接口,让大家领略后端主流架构的设计和开发
  • 课程安排:
  • 1、移动端架构师需要具备的后端技术栈和能力
    2、前后端分离的架构与高效的协作方式
    3、后端-SpringBoot2 + MyBatis + MySQL开发框架搭建
    4、后端-基于PDMan工具实现数据库建模
    5、后端-基于BCrypt实现用户信息加密与注册功能
    6、后端-整合与优化Swagger2文档API
    7、后端-登录功能与Response功能设计实现
    8、后端-基于Redis实现高速的用户信息缓存
    9、后端-基于注解拦截器实现接口访问控制与登录态处理
    10、后端-用户列表API开发与分页功能实现
    11、后端-用户管理API的设计与实现
    12、后端-商品类别模块建模与功能开发
    13、后端-商品类别管理API开发
    14、后端-城市服务模块功能实现
    15、后端-项目打包并部署到Tomcat服务器
    16、后端-基于Tomcat + Nginx搭建负载均衡的服务器
  • 第27周   前端-管理后台设计实现
  • 本周将帮你打通前后端技术,带你基于React + TypeScript + AntDesign + react-router完成“好物”项目管理端前台的搭建,让你领略web前端的主流架构设计和开发
  • 课程安排:
  • 1、移动端架构师需要具备的前端技术栈和能力
    2、前端-基于create-react-app 搭建web工程
    3、前端-整合antd与less并搭建具有Ant Design风格的页面
    4、前端-页面结构设计与框架搭建
    5、前端-导航架构模块设计与实现
    6、前端-基于react-router-dom实现路由模块
    7、前端-网络模块封装与service层实现
    8、前端-用户管理功能模块设计与实现
    9、前端-商品类别管理模块开发
    10、前端-添加商品类别功能实现
    11、前端-项目打包与部署
  • 第28周   【SDK+服务端+控台】配置中心架构实现
  • 本周将从配置中心的原理出发,带你为“好物”项目手写一个配置中心系统,其中包括配置中心后端,以及配置中心的客户端SDK,让你贯通前后端开发
  • 课程安排:
  • 1、配置中心架构及实现原理解析
    2、配置中心系统数据建模
    3、后端-查询配置接口设计与开发
    4、后端-更新配置接口设计与开发
    5、后端-配置持久化存储功能设计与实现
    6、后端-如何实现高速缓存与探针功能?
    7、前端-配置列表设计与实现
    8、前端-搜索与过滤功能实现
    9、前端-添加配置与发布实现
    10、前端-导航模块扩展与路由通知功能实现
    11、前端-如何实现发布回滚的功能?
    12、客户端SDK-HiConfig工程搭建与接口设计
    13、客户端SDK-配置同步与更新功能实现
    14、客户端SDK-如何实现配置缓存与恢复功能?
    15、客户端SDK-如何实现配置的高效获取与监听功能?
    16、基于HiConfig实现模块功能的动态化
  • 第29周   HiAbility SDK开发
  • 本周将带你设计实现“好物”项目HiAbility SDK开发,完成支付能力,推送能力,扫码能力,分享SDK,埋点统计等能力的实现与整合
  • 课程安排:
  • 1、基础推送能力集成
    2、OEM厂商推送能力集成
    3、打造可配置化分享面板
    4、分享卡片消息到QQ好友
    5、分享卡片消息到微信
    6、华为HMS扫码能力集成
    7、数据统计与埋点
    8、支付宝支付能力的实现与整合
    9、微信支付能力的实现与整合
  • 第30周   学成“下山”
  • 本周是我们的学成下山之战,在这里将传授你“出师锦囊”,让你躺赢接下来的职业发展,助你早日登上移动端的巅峰
  • 课程安排:
  • 1、如何设计高质量的简历
    2、巧用简历投递渠道让机会找自己
    3、移动端架构师常见面试分析
    4、移动端架构师面试技巧
    5、善用面试复盘面试路上越战越勇
    6、关于架构师的职业发展探讨
    7、架构师该如何带团队
    8、架构师如何做好技术管理
    9、揭开项目管理面纱
    10、项目管理的五大阶段的最佳实践
    11、项目管理的方法论
    12、项目声明周期管理和风险管理
    13、后续学习指南

〖视频截图〗:

  • 移动端架构师
    移动端架构师

 

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。