anroid知识体系

简介: anroid知识体系

想要成为一名优秀的 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

有需要的可以滴滴我或者留言!!!

相关文章
|
6月前
|
程序员 Android开发 Java
android开发基础机构,真的太香了
android开发基础机构,真的太香了
|
设计模式 架构师 算法
Android程序员必备!Android开发热门前沿知识,重难点整理
Android程序员必备!Android开发热门前沿知识,重难点整理
Android程序员必备!Android开发热门前沿知识,重难点整理
|
XML 消息中间件 编解码
Android Studio 知识储备 之 ✨-基础知识学习历程
文章目录 一、工程相关解析(各种文件,资源访问) 1.res资源文件夹介绍: 2.如何使用这些资源 三个重要文件MainActivity.java 布局文件:acticity_main.xml Android配置文件AndroidMainfest.xml
Android Studio 知识储备 之 ✨-基础知识学习历程
|
存储 JSON 安全
面试查缺补漏,android核心知识:组件篇
  前言   最近一段瞎xx百度,无意中发现一个帖,看帖子的质量肯定是被转载不知道多少次了,来出处都已经不见了,但是博主的质量比较的高。甚至把这篇文章的内容当做面试前的查缺补漏也是非常合适的。   总之是一篇质量非常给常高的文章。所以忍不住在这里发了出来。如果原作者看到这篇文章,觉得不妥。私聊我就会删掉。   一、应用组件
143 0
|
程序员 Android开发 开发者
《深入探索Android热修复技术原理》实体书正式出版!给你一个更充实全面的热修复技术视角
我们在2017年6月发布了《深入探索 Android 热修复技术原理》一书的电子版,电子版发布以后得到了很好的反响。之后,我们对电子版内容做了认真的整理和校对,对全书内容进行了全面的充实,于2018年秋正式出版了《深入探索 Android 热修复技术原理》的彩页印刷版实体书,实体书内容更加精彩!
3866 0
《深入探索Android热修复技术原理》实体书正式出版!给你一个更充实全面的热修复技术视角
|
Linux Android开发 设计模式
关于各阶段Android开发书籍推荐
书籍是人类进步的阶梯。这阶梯同样适用我们码农。 一,Android入门系列书籍推荐;        Android Training     Android API Guides   推荐理由:入门使用官方的这两份文档是最好不过的了,没有比这个更权威,更准确的Android学习资料了。
3683 0
|
Android开发 安全 存储
Android开发之深度项目设计探索(三)
本文是《Android开发之深度项目设计探索》系列的第三篇,主要介绍的是 基于最新RxPermissions 类库的使用及源码分析,本系列历史文章:《Android开发之深度项目设计探索(一)》《Android开发之深度项目设计探索(二)》 Permission,这个单词翻译过来的意思有:允许、许可、权限。
1341 0
|
Android开发 Kotlin API
Android开发之深度项目设计探索(二)
在《Android开发之深度项目设计探索(一)》 这篇文章中,主要描述了深度项目架构设计会涉及到的一些知识点,那么这篇文章主要介绍的是 RxLifecycle 使用及源码分析。
1243 0
|
ARouter 前端开发 Android开发
Android开发之深度项目设计探索(一)
如何快速高效构建一款优雅的Android-app架构是大家常聊的话题,本系列文章旨在分析研究探讨基于巨人的肩膀上搭建一款app项目架构。不仅是为了加深对知识点的学习以使用,而且也为了后面的准备。
1891 0
下一篇
无影云桌面