计算机网络
网络基础
计算机网络基础知识总结
键入网址后,期间发生了什么?
探究!一个数据包在网络中的心路历程
HTTP
你每天都在使用的HTTP协议,到底是什么鬼?
全网最透彻HTTPS(面试常问)
硬核!30 张图解 HTTP 常见的面试题
面试 HTTP ,99% 的面试官都爱问这些问题
SSH原理与运用
互联网协议入门1
互联网协议入门2
TCP/IP
TCP/IP 基础知识总结
跟着动画学习TCP三次握手和四次挥手
加解密、解压缩、编解码、字符集
[密码学笔记] http://www.ruanyifeng.com/blog/2006/12/notes_on_cryptography.html
[字符编码] http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html
[RAS算法] http://www.ruanyifeng.com/blog/2013/06/rsa_algorithm_part_one.html
[数据压缩与信息熵] http://www.ruanyifeng.com/blog/2014/09/information-entropy.html
[什么是数字签名] http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html
操作系统
[看完这篇操作系统,和面试官扯皮就没问题了。]https://mp.weixin.qq.com/s/59xyIj1nIFp2TtkKFYnR-g
[进程之间究竟有哪些通信方式? 记一次面试:进程之间究竟有哪些通信方式?
凉了!某丙没答好「进程间通信」,被面试官挂了...] https://mp.weixin.qq.com/s/mblyh6XrLj1bCwL0Evs-Vg
[10 张图打开 CPU 缓存一致性的大门]https://mp.weixin.qq.com/s/hjywA21UrvZSzdgvAr6fQA
Java
Java集合
[Java 集合框架看这一篇就够了]https://mp.weixin.qq.com/s/bVOSat47L0Hskfx9akAN6Q
[HashMap]https://mp.weixin.qq.com/s/0Gf2DzuzgEx0i3mHVvhKNQ
[面试官:HashMap 为什么线程不安全?] https://mp.weixin.qq.com/s/VtIpj-uuxFj5Bf6TmTJMTw
[《吊打面试官》系列-ConcurrentHashMap & Hashtable] https://mp.weixin.qq.com/s/AixdbEiXf3KfE724kg2YIw
[ArrayList:]https://mp.weixin.qq.com/s/WoGclm7SsbURGigI3Mwr3w
[ArrayList源码解析,老哥,来一起复习一哈?] https://mp.weixin.qq.com/s/3PNWmtS-bEZgZjd9wyMiDA
HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你!: https://www.jianshu.com/p/95a9a82d7a1c
JVM
[JVM必问知识点:类加载过程:]https://mp.weixin.qq.com/s/eHqFONXXNc-LD4ugaKM6UA
[看完这篇垃圾回收,和面试官扯皮没问题了:]https://mp.weixin.qq.com/s/_AKQs-xXDHlk84HbwKUzOw
[JVM 内存模型概述:]https://www.wanandroid.com/blog/show/2152
JIT & AOT
浅谈JIT&AOT https://www.jianshu.com/p/ac079e7fc412
关于AOT(Ahead-of-Time)Compilation的调研与实践 https://zhuanlan.zhihu.com/p/88022029
AOT,JIT区别,各自优劣,混合编译 https://blog.csdn.net/h1130189083/article/details/78302502
Java多线程
[Java 并发进阶常见面试题总结]https://mp.weixin.qq.com/s/cdHfTTvMpH60SwG2bjTMBw
[如果你这样回答“什么是线程安全”,面试官都会对你刮目相看(建议珍藏)]https://mp.weixin.qq.com/s/WDeewsvWUEBIuabvVVhweA
[Android线程管理之ThreadPoolExecutor自定义线程池]https://www.cnblogs.com/whoislcj/p/5610903.html
[Android性能优化之使用线程池处理异步任务]https://blog.csdn.net/u010687392/article/details/49850803
[Android线程与线程池] https://blog.csdn.net/weixin_36244867/article/details/72832632
[线程池没你想的那么简单] https://www.jianshu.com/p/d8b7ea66f39c
[Android多线程技术选型最全指南(part 1 - 误区)] https://juejin.cn/post/6844903880824881160
[应该了解的一些并发基础知识] https://mp.weixin.qq.com/s/KuKROR8c4Bc1CdXE6AxB2g
Java线程池实现原理详解: https://blog.csdn.net/u013332124/article/details/79587436
线程池中的阻塞队列选择:https://blog.csdn.net/qq_35909080/article/details/87002367
线程池.md: https://github.com/Blankj/AndroidOfferKiller/blob/master/java/%E7%BA%BF%E7%A8%8B%E6%B1%A0.md
反射:
[大家都说 Java 反射效率低,你知道原因在哪里么]https://juejin.cn/post/6844903965725818887
[Java反射以及在Android中的特殊应用] https://mp.weixin.qq.com/s/bDe-6KiTbazC5FhUi-Z65A
动态代理
Java 动态代理作用是什么?:https://www.zhihu.com/question/20794107
Java动态代理分析:https://blog.csdn.net/danchu/article/details/70146985
Java中动态代理的两种方式JDK动态代理和cglib动态代理以及区别:https://blog.csdn.net/ju_362204801/article/details/90714295
枚举:
[java枚举类型的实现原理] https://blog.csdn.net/mhmyqn/article/details/48087247
Android 基础知识
Drawable:
[8.1.1 Android中的13种Drawable小结 Part 1: ]https://blog.csdn.net/coder_pig/article/details/49006217
[8.1.1 Android中的13种Drawable小结 Part 2: ]https://blog.csdn.net/coder_pig/article/details/49008397
[Android资源那些事儿:] https://www.jianshu.com/p/8d14d2c25138
[Android drawable微技巧,你所不知道的drawable的那些细节: ]https://blog.csdn.net/guolin_blog/article/details/50727753
[无需自定义View,彻底解放shape,selector吧: ]https://juejin.cn/post/6844903676973170702 https://juejin.cn/post/6844903777221246984
[Android 项目中 shape 标签的整理和思考:] https://www.jianshu.com/p/a0c07ddc9a55
Intent
[【Android】你可能需要了解Intent的那些事:] https://www.jianshu.com/p/cd0b888a2f02
打包:
[Android打包相关知识整理:] https://juejin.cn/post/6896399422729814024
[apk结构分析以及减少包大小:] https://juejin.cn/post/6844904033702903821
[10分钟了解Android项目构建流程:] https://juejin.cn/post/6844903555795517453
[Android打包流程之资源管理:] https://blog.csdn.net/huxin1875/article/details/87816465
序列化:
[序列化Serializable和Parcelable的理解和区别: ]https://www.jianshu.com/p/a60b609ec7e7
[Bundle、Parcel解析:] https://xingtangcunliu.github.io/2016/11/02/Android-Bundle/
Android 序列化 Parcelable VS Serializable: https://blog.csdn.net/CoderR/article/details/75669516?spm=1001.2014.3001.5502
动画
Android 一共有多少种动画?准确告诉你!: https://www.jianshu.com/p/0eb89d43eea4
RecyclerView:
深入理解 RecyclerView 的缓存机制: https://juejin.cn/post/6844904146684870669
【进阶】RecyclerView源码解析(一)——绘制流程: https://www.jianshu.com/p/c52b947fe064
RecyclerView剖析: https://blog.csdn.net/qq_23012315/article/details/50807224
[【腾讯Bugly干货分享】Android ListView与RecyclerView对比浅析--缓存机制]: https://blog.csdn.net/Roshen_android/article/details/53095526
基于滑动场景解析RecyclerView的回收复用机制原理: https://juejin.cn/post/6844903583259820039
RecyclerView 必知必会: https://zhuanlan.zhihu.com/p/24807254
四大组件+Fragment
Activity
基础总结篇之一:Activity生命周期: https://blog.csdn.net/liuhe688/article/details/6733407
Android开发 - ActivityLifecycleCallbacks使用方法初探: https://blog.csdn.net/tongcpp/article/details/40344871
深入理解 Activty 加载速度优化: https://juejin.cn/post/6844903567522791431#heading-1
简析Window、Activity、DecorView以及ViewRoot之间的错综关系: https://www.jianshu.com/p/8766babc40e0
Fragment中调用startActivityForResult的那些坑: https://juejin.cn/post/6844903742966333448
QMUI实战(二)—Activity 和 Fragment,我们该选择谁?: https://juejin.cn/post/6844903822733623303
四大组件,这些知识点你还记得吗?《Android题集》: https://juejin.cn/post/6844904183720574989
onNewIntent触发时机: https://www.jianshu.com/p/bd1cfc31b035
深入理解Activity启动流程(一)–Activity启动的概要流程: https://blog.csdn.net/chen381051010/article/details/56844543
【凯子哥带你学Framework】Activity启动过程全解析:https://blog.csdn.net/zhaokaiqiang1992/article/details/49428287?spm=1001.2014.3001.5502
View和动画,这些知识点你还记得吗?《Android题集》:https://juejin.cn/post/6844904191941410830#heading-12
动画系列(一)Android 屏幕刷新机制:https://xiaozhuanlan.com/topic/6524387019
Service:
关于Android Service真正的完全详解,你需要知道的一切: https://blog.csdn.net/javazejian/article/details/52709857
BroadcastReceiver:
Android四大组件:BroadcastReceiver史上最全面解析: https://www.jianshu.com/p/ca3d87a4cdf3
Android 7.0中ContentProvider实现原理:https://mp.weixin.qq.com/s/jhVzFa6DatRNK9anuDoSUA
Content:
Android Context完全解析,你所不知道的Context的各种细节:https://blog.csdn.net/guolin_blog/article/details/47028975
你对Context了解多少呢: https://www.jianshu.com/p/492ec35ea552
Fragment:
Android通过hide&show管理多Fragment出现重叠以及点击穿透的解决之道: https://juejin.cn/post/6844903846221725709
Fragment可见性及懒加载终极解决方案: https://www.jianshu.com/p/de332ecdd14d
Handler:
三思系列:Android的消息机制,一文吃透: https://juejin.cn/post/6939425097069363230
Handler的初级、中级、高级问法,你都掌握了吗?: https://juejin.cn/post/6893791473121280013
Gradle:
掌控 Android Gradle: https://kymjs.com/code/2018/02/25/01/
安卓文件系统
彻底搞懂Android文件存储---内部存储,外部存储以及各种存储路径解惑: https://blog.csdn.net/u010937230/article/details/73303034
DataBinding
Android DataBinding 从入门到进阶: https://www.jianshu.com/p/2c4ac24761f5
组件化:
“终于懂了” 系列:Android组件化,全面掌握!
一篇文章搞懂Android组件化: https://juejin.cn/post/6881116198889586701https://mp.weixin.qq.com/s/g1XIJ7vPl5yj1_thuV6b9Q
“终于懂了” 系列:Android组件化,全面掌握!: https://mp.weixin.qq.com/s/WSzpJXXocajJjmWgYem3fA
得到APP:浅谈Android组件化: https://www.jianshu.com/p/41f502e84310
Android 组件化最佳实践: https://juejin.cn/post/6844903649102004231#heading-0
框架:
Okhttp:
面试官:听说你熟悉OkHttp原理?: https://juejin.cn/post/6844904087788453896#heading-9
Android |《看完不忘系列》之okhttp: https://juejin.cn/post/6856966817844625415
从一次请求开始,深入探索OkHttp: https://juejin.cn/post/6909445385266135048
四种引用:https://www.cnblogs.com/liyutian/p/9690974.html
Retrofit:
Retrofit源码分析: https://mp.weixin.qq.com/s?__biz=MzAxNzMxNzk5OQ==&mid=2649485530&idx=1&sn=8c69ae457be3a9672451307619d2f368&chksm=83f839dab48fb0cccb050a2228a930b6edc55fea88e211707d3fc638f473838e5af24ff6da33&scene=38#wechat_redirect
Android |《看完不忘系列》之Retrofit: https://juejin.cn/post/6862368973888061453
从架构角度看Retrofit的作用、原理和启示: https://www.jianshu.com/p/f57b7cdb1c99
Glide:
Glide 源码分析解读-基于最新版Glide 4.9.0: https://www.jianshu.com/p/9bb50924d42a
Glide 源码分析解读-缓存模块-基于最新版Glide 4.9.0: https://www.jianshu.com/p/62b7f990ee83
宏观剖析Glide4.8.0源码:https://www.jianshu.com/p/0ec378cfb4c7
RxJava:
rxjava2源码解析(一)基本流程分析: https://juejin.cn/post/6844904041718235143
rxjava2源码解析(二)线程切换分析: https://juejin.cn/post/6844904050949881864
rxjava2源码解析(三)线程池原理分析: https://juejin.cn/post/6844903823626993671
RxJava面经一,拿去,不谢!: https://juejin.cn/post/6900870262062120967
RxJava面经二,拿去,不谢!:https://juejin.cn/post/6905725515521835015
Gson:
【Gson源码分析】- 彻底搞懂Gson解析流程: https://www.jianshu.com/p/d04beef7f52a
EventBus:
Android 主流开源框架(八)EventBus 源码解析(含面试相关文问题解答):https://juejin.cn/post/6900441846632169486
EventBus从入门到装逼,源码分析,手撸框架:https://blog.csdn.net/u014702653/article/details/100087264
Android主流三方库源码分析(九、深入理解EventBus源码):https://juejin.cn/post/6844904082747080717
EventBus源码解析:https://juejin.cn/post/6844904007199113229
Binder:
为什么Android要采用Binder作为IPC机制?: https://mp.weixin.qq.com/s?__biz=MzI5NjE3NzA4Mg==&mid=402297589&idx=1&sn=150c8640d87b75cce2015ec7fb635972&chksm=7e466e204931e736fb761acd1a4da2d5fbdc01aa289b9ad4a7de3bce174a6bcfff1596977b78&scene=38#wechat_redirect
Android Binder机制浅析: https://blog.csdn.net/singwhatiwanna/article/details/19756201
LruCache:
彻底解析Android缓存机制——LruCache: https://www.jianshu.com/p/b49a111147ee
MVC\MVP\MVVM
MVC: https://www.jianshu.com/p/aac29dfbafcd
MVP: https://www.jianshu.com/p/9daf10822f8a
MVVM: Android 架构探索,MVVM 原来如此简单!:https://mp.weixin.qq.com/s/t1VBFZSOrzfxjxbfELF2Ng
自定义View:
自定义View系列教程:https://blog.csdn.net/zf6688/article/details/51754350
自定义View怎么学: https://mp.weixin.qq.com/s?__biz=MzAxNzMxNzk5OQ==&mid=2649484578&idx=1&sn=891d1d65209aa5302b064577799b06c1&scene=38#wechat_redirect
自定义view: https://github.com/GcsSloop/AndroidNote/blob/master/CustomView/README.md
Android进阶知识:事件分发与滑动冲突:https://juejin.cn/post/6844903829482242056#heading-17
自定义动画怎么学: https://mp.weixin.qq.com/s?__biz=MzAxNzMxNzk5OQ==&mid=2649484581&idx=1&sn=72c4a5c4d4ac163f42fbdbca1a8bdecf&scene=38#wechat_redirect
安卓面试:
https://juejin.cn/post/6844903432772386830#heading-17
android面试笔试总结(android篇):https://juejin.cn/post/6844903961099501581#heading-13