成为一名软件开发者很容易,
但是,
想要成为一名优秀的、杰出的软件开发从业者却非易事,
这需要,
付出很多的努力,耐心,
更需要,
坚定不移的毅力才能做到。

前言

文章整理、总结Android架构师成长中的各类知识要点,持续更新。。。

内容涵盖:

  • 基础知识进阶
  • 常用高级UI
  • FrameWork源码解读
  • 架构师必备技能
  • 常用第三方框架解读
  • 源码解析
  • 性能优化
  • 数据结构
  • 算法
  • 常用开发架构项目实战
  • 混合开发
  • 大前端(Web、微信小程序、Flutter)

    写在前面

我要快速 Get 到我需要的知识技能?

这是一篇有史以来最长的Android开发知识体系整理博文,你无需浏览全文,只需从博文目录选择你所需要的即可。

在开始浏览文章前,建议先看看下面这些文章:

Android开发经验、能力提升

目前最全的Android架构师成长路线,吐血整理

2021大厂Android面试经历,面试心得体会

Android学习笔记在互联网上火了,讲的明明白白!

十年资深Android架构师;Android高工成长路线「建议收藏」

程序员 VS 35

35

这个既熟悉又陌生的数字,

曾几何时,

困惑住了多少的软件开发从业者。

那么,当「程序员 VS 35岁」,会碰撞出什么样的火花:

是:懵懵懂懂,不识所谓,一心只为敲代码;

还是:侃侃而谈,望而却步;

亦或是:蓄势勃发,脱颖而出。

往昔回顾

你是否也有这样的经历?

开发技能基础薄弱

初入职场,凭借一个 Hello World 开始了软件开发工作,基础知识薄弱,缺少系统的开发经验,更别提对原理、底层技术的了解,每天担心的是 UI 又会出一个什么酷炫的效果、明天会不会又来一个奇葩的需求,但那又如何呢,依旧开心的写 Bug ,改 Bug,写 Bug。

无完整项目经验

接触不到大型项目的开发,经验缺乏,开发的项目用户使用量极少,能力提升缓慢。

多年没有突破

看似忙碌的工作着,实际是将一年的工作重复做了很多年,每天重复用着复制、粘贴的工作模式,写不完的业务逻辑,甚至是那些信手捏来的无数个第三方 API,最终造就了无数个“平庸的大神:代码搬运工”。

提及知识原理、底层技术,更是知之甚少。

时不待我,当与时俱进

现今的 Android 开发市场,新鲜血液在不断的输入,越来越多的开发者还在涌入,市场早已饱和。

现今的 Android 开发市场,早已不是你会开发个 APP ,就能找到一个满意的工作的时候了。

现今的 Android 开发市场,对技能的要求越来越高,市场需要的是能开发出优质应用的开发人员。

然而,技能顶端的人才,如金字塔般,越往上越稀缺,高级人才仍然是供不应求,各大厂的招聘要求早已经深入到底层技术,当然,与之相对应的便是可观的收入。

好的机遇时刻都在,但这需要你有所准备,才能抓住机遇,脱颖而出。

Android架构师知识体系

Android移动开发架构师 - 图1

Android开发基础技能

Java基础进阶

  • 泛型
  • 注解
  • 并发
  • 数据传输与序列化
  • JVM 虚拟机
  • 反射与类加载
  • 动态代理
  • 文件 File,I/O

    Kotlin开发基础

    Kotlin 开发常用基础知识,高级进阶到项目实战。

如果不懂 Kotlin,将连官方文档都看不懂了,不信你往下看:
Android移动开发架构师 - 图2

Android高级UI与FrameWork

高级UI

  • 自定义View
  • 复杂动画、滑动效果
  • 事件分发
  • 常用基础布局绘制原理
  • Material Design 组件
  • WebView

    FrameWork框架层

  • Binder

  • Handler
  • Android虚拟机Dalvik
  • 插件化开发
  • Window
  • 插件化换肤方案

    Android四大组件

  • Activity/Fragment

  • Service
  • Broadcast Receive
  • Content Provider

深入了解组件间的通信方案。

数据持久化

  • 文件存储系统
  • 轻量级KV(键值对)Shared Preference
  • 嵌入式Sqlite数据库

    性能优化

    代码优化

  • 六大原则

  • 数据结构
  • 算法
  • 设计模式

    程序性能优化

  • OOM 内存溢出

  • ANR 问题分析
  • Crash 监控方案
  • 启动速度优化
  • 程序执行速度优化
  • 布局优化
  • 内存优化
  • 耗电优化
  • 网络传输与本地数据存储优化
  • APK 瘦身
  • 屏幕适配

    自主开发效率优化

  • 分布式版本控制系统

  • Gradle

    开源框架

  • 热修复技术

  • 插件化
  • 组件化
  • 图片加载框架
  • 网络访问框架
  • IOC架构
  • Jetpack 架构组件

    NDK

  • 基础开发技能

  • 多图片格式处理
  • 音视频开发
  • 智能家居串口编程

    实战项目

    纸上谈兵不可取,

绝知此事要躬行。

微信小程序

  • 小程序开发生态
  • UI
  • API 调用
  • 对接微信

    Hybrid开发与Flutter

  • Web基础开发技能

  • Web项目搭建
  • Flutter基础开发技能
  • Flutter项目开发

    Jetpack Compose

    官方是这样介绍Compose的:

Jetpack Compose 是用于构建原生 Android 界面的新工具包。它可简化并加快 Android 上的界面开发,使用更少的代码、强大的工具和直观的 Kotlin API,快速让应用生动而精彩。

它可让您更快速、更轻松地构建 Android 界面。

为何选择Compose:
Android移动开发架构师 - 图3

Harmony OS

  • 华为鸿蒙生态
  • HarmonyOS APP开发
  • HarmonyOS 多媒体开发