最近呢一直在学习Android开发的知识,途径一直是在网上找视频或者在CSDN等网站上找资料去学习,最近的学习慢慢的发现了Android 知识体系的庞大与繁杂,看来看去感觉自己有些学的乱,并且看了不少博客之后深感自己需要建立一个知识体系。不能再向无头苍蝇一样东撞一头西撞一头,所以用了点时间做了一个这个知识脑图,也方便自己学习起来更有方向。 然后写这个博客的初衷也是给自己做一个总结经验。如果有人看到了这个文章,希望能帮助到你,不过本人技术水平实在太有限,也希望有人可以指正我的不足与错误,共同进步。
Android知识体系结构图

我在写这个脑图的时候全是靠自己想,结果就是脑图上的知识体系比较乱,虽然上面的知识不是特别多,但是对于我这样只工作了不到一年的小菜鸟,就够我学到吐血了(手动笑哭)。
Android部分
Android部分的话东西是最多的,本人目前为止能想到的(有意见欢迎补充)
- 四大组件
- UI部分,包括常见的布局,控件以及自定义view,自定义view部分就涉及的比较多了,包括Measure,Layout,Draw(这个了解的比较少)流程。
- View的事件分发,Touch事件的传递,滑动冲突的处理。
- 线程间通信,Handler 的机制,包括Handler,Message,MessageQueue,Looper之间的关系。
- 异步操作AsyncTask的使用
- IPC 的理解,包括Binder机制,AIDL的使用
- FrameWork层 WMS AMS
- 数据存储方式,包括SharedPerference,SQLite,ContentProvider,File
- 第三方库,包括网络请求OKHTTP ,retrofit2,Glide,RxJava等。
- 其他的一些知识包括插件化,组件化,JNI ,音视频, 各种优化,KT 和Flutter。
Java部分
- 泛型,反射,动态代理
- 多线程,包括线程间通信,线程池,锁等概念
- JVM 内存模型,内存结构,GC,类加载
- 四种引用
- 设计模式
- Java关键字
网络部分和数据结构与算法
这两个部分我写的内容比较少,是因为我对这方面的东西实在是比较欠缺,只能说出一些名字,这也是我之后要学习的重点方向
- 网络部分
1.网络模型分层
2.HTTP/HTTPS 协议
3.TCP/UDP
4.TCP 三次握手
5.Socket - 数据结构与算法
- 数据结构
1.栈,队列
2.链表,数组
3.树,图
4.集合 - 算法
1.排序算法
2.查找算法
3.递归,分治,贪心,回溯,动态规划
4.并查集,位运算
5.LRU缓存,布隆过滤器
- 数据结构
结尾
我知道写的这些在于一些大佬看了再简单不过,不过凡事不都是由简入深的嘛,只有打好基础才能更近一步的学习,希望这篇文章可以帮助到你。
版权声明:本文为weixin_40293854原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。