手记

【备战春招】第17天 移动端架构师所需要具备的技术栈和能力

课程名称:移动端架构师


课程章节:走进移动端架构师


课程讲师:CrazyCodeBoy LovelyChubby


课程内容:

所需要具备的能力

  • 技术深度

  • 技术广度

  • 动手能力

  1. 造轮子       

  2. UI

  3. 高级自定义UI

  4. 通用UI组件库

  5. Library/SDK

  6. 通用基础库

  7. 项目框架/架构

  • 经验丰富

  • 领导力

  • 沟通能力

  • 洞察与前瞻

  • 赋能业务







如何从0开始架构一个中大型APP

需要考虑的事情

研发效率

  1. 多人多团队协作:解耦/模块间相互独立/单独仓库/jar/aar依赖

  2. 多人多团队协作:复杂度控制在组件内部,对外“简单可依赖”

  3. 复用:为矩阵产品输出轮子

  4. 编译速度:组件单独编译,maven私服加速,构建加速

计算选型的技巧

  1. 语言:Java+Kotlin

  2. 架构模式:MVP/MVVM

  3. 工程结构:模块化/组件化/容器化

  4. 混合架构:Native + Flutter/RN + H5

  5. 网络:封装统一的网络层接口,不直接依赖网络库

  6. 持久化:File + SharedPreferences + SQLite/Room


数据层设计

  网络层

  • RESTful风格

  • 提供统一的API接口

  • 支持底层网络框架的切换,并对上层业务无感

本地数据

  • 提供ORM数据操作框架减少对SQLite的直接操作

  • 提供统一的数据缓存框架


容灾能力

  1. 监控与预警

  2. 动态发布

  3. 热修复


开发支持工具

开发规约

  • 代码规约

  • CodeStyle

  • CodeReview

DebugTool

自动构建与持续集成


架构大图

底层基础库

  • 组件库

  • 工具库


业务层设计

工程结构设计




课程收获:

谢谢老师,讲的非常细致,很容易懂。期待后边的学习。








0人推荐
随时随地看视频
慕课网APP