还在为如何学习 Android 而迷茫吗?2021 Android 高级知识体系为你导航!

前言

想要成为一名优秀的 Android 开发,你需要一份完备的 知识体系,能够让我们学到的知识体系化。让自己清楚哪块是自己的知识盲区,哪块已经构建起根基,然后根据实际情况,有针对性的进行模块学习。

话不多说,直接上图:

知识大纲

一,Java高级
  • 反射
  • 注解
  • 泛型
  • 多线程:线程、线程池、Synchronized、volatile、ReentrantLock
  • JVM:类加载、内存模型、垃圾回收机制、强弱虚引用
  • 集合容器:Collection、Map
二,安卓多线程

多线程是开发人员必不可少的技术点,也是初学者不太容易掌握好的一个难点。要想设计出优秀的程序,那必然需要合理的线程调度。

  • Handler:Handler、Looper、Message
  • ThreadLocal
  • AsyncTask
三,网络

在 Android 的日常开发和源码阅读中会经常碰到相关知识,掌握这些网络基础知识,也是 Android 程序员真正迈向高阶的过程中必备的一些基本技术素质之一。

  • HTTP、HTTPS
  • TCP UDP
  • TCP/IP
  • SOCKET
  • 网络请求过程:三次握手、四次挥手、证书、断点续传
四,视图
  • Surface
  • View: 自定义 View(measure、layout、draw)
  • Window:PhoneWindow、DecorView、ViewRoot
  • 事件分发机制:滑动冲突、dispatch
  • 动画:帧动画、View动画、属性动画
  • ListView工作原理
  • RecycleView工作原理、与ListView比较
  • Webview:js通信,加载优化
五,图片
  • BitMap:加载效率、缓存策略、内存计算
  • Drawable
  • 加载大图
六,安卓系统
  • 系统启动流程
  • 应用启动流程
  • 进程间通信:IPC机制、Binder原理、AIDL
  • 构建:Grale、APT编译注解处理器
  • apk打包:打包流程、v1和v2签名、分包multidex、加固
  • Dalvik与ART
  • SystemServer:ActivityMagangerService、PackageManagerService,WindowManagerService
  • Dalvik与ART
  • JNI:JNI基础、NDK
七,四大组件

Android 四大基本组件分别是 Activity,Service 服务,Content Provider内容提供者,BroadcastReceiver 广播接收器。

  • Acitivity难点:四大launch模式、启动流程、加载布局流程
  • Service难点:启动方式、启动流程、应用场景
  • ContentProvider难点:生命周期、启动流程、原理
  • Broadcast难点:生命周期、注册方式、启动流程
八,性能优化

作为一个 Android 程序员,性能优化是无法避开的事情,并且性能优化也是 Android 中最有挑战的工作之一,更是每个工程师都需要掌握的核心技能。

  • 启动优化
  • UI优化
  • 内存优化
  • 卡顿优化
  • 网络优化
  • 数据库优化
  • 包体积优化
  • ANR
九,三方库

Android 平台上的数据库框架非常多,但是有一个共同特点就是基于对象关系映射(ORM) 模型的。实现的目标也都是不需要写 SQL 语句,通过对对象的操作保存和操作数据。

  • 图片加载: Gride、Fresco、Picasso、Android-UIL
  • 网络通信:Retrofit、Okhttp、Volley
  • 异步处理:RxJava、RxAndroid、RxBinding、EventBus
  • 数据库:
十,与时俱进
  • 跨平台:Flutter、ReactNative、Weex
  • 模块化
  • Hook技术
  • 插件化:DroidPlugin、VirtualAPK 、Small、RePlugin
  • 组件化:ARouter、CC
  • 热更新:Tinker、AndFix、Robust
  • 动态化
十一,Kotlin
  • 扩展函数
  • 构造函数
  • 协程
十二,框架
  • Jetpack:ViewModel、LiveData、Lifecycles、Navigation、Room、Paging、WorkManager、DataBinding
  • MVC
  • MVP
  • MVVM
  • 设计模式:六大原则、常见设计模式
十三,音视频
  • 音视频基础
  • ffmpeg
  • WebRTC
  • OpenGL
  • Vulkan
  • OpenCV
十四,数据结构与算法


最后附超全的 Android 开发笔记,需要的小伙伴扫码下方二维码免费获取哦!

请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值