目录
1、Java
2、Android
3、Flutter
4、Kotlin
5、算法和数据结构
6、设计模式
Java
String 类
equals() 和 hashCode() 方法
final 关键字
Serializable 序列化
Java 自动装箱/拆箱
类加载过程
Java 对象创建
volatile 关键字
线程池 ExecutorService
线程 interrupt() 中断
静态锁与对象锁
wait() 和 notify()
Lock 锁
AtomicInteger 类
Java 内存结构
双亲委派模型
JVM、Dalvik、ART 比较
注解处理器
反射汇总
Android
1,Jetpack 组件
2,系统组件
Activity 生命周期
Activity 启动流程
Activity 组件创建
Context 和组件关系
Ams 服务流程( Activity 启动)
Activity 启动模式及场景
Service 启动流程
Service 绑定流程
IntentService 原理
Android 广播
LocalBroadcastReceiver 本地广播
ContentProvider 原理
Fragment 生命周期
Intent 数据传递
创建进程 Android
3,视图
setContentView() 初始化
WindowManager 管理
onWindowFocusChanged() 方法
Window addView 视图
View onMeasure
View onLayout
ScrollView 滑动原理
invalidate() 原理
NestedScroll 机制
RecyclerView 回收机制
侧滑关闭界面原理
Choreographer 控制
ViewGroup addView() 方法
requestLayout() 方法
Surface 分析
4,动画
补间动画原理
正在加载之8个圆球动画旋转
Scroller 原理
实现爆炸效果
5,图形图像
Glide 初始化
Glide 简单流程
Glide Engine
Glide Fetcher
Glide Decode
Glide Target
Glide Disk Cache
Glide Memory Cache
Glide Executor
Glide Registry
Glide 采样率 inSampleSize 计算
Bitmap 分析
ImageView ScaleType
6,硬件渲染
硬件渲染_绘制阶段上层基本流程
硬件渲染_数据同步
硬件渲染_树形视图节点绘制记录
硬件渲染_绘制一帧
7,触控
ViewGroup 事件传递原理
View 事件传递原理
触屏事件进入 Activity
手指触控点
判断长按和点击
8,消息异步
Android 消息机制
Rx 异步
Rx 线程切换
Rx 转换操作符
ThreadLocal 原理
AsyncTask 任务
9,性能
10,打包
Android 打包流程
Apk 瘦身方案
签名文件
Android 之 Gradle 脚本流程
11,开源
Okhttp 思考
EventBus
ButterKnife
Retrofit 原理
Dagger2 依赖注入
Arouter 路由框架
LeakCanary
BlockCanary
12,JNI
关于 C++ 层 Thread 的 threadLoop 的问题
Java 与 JNI 层通信
13,数据存储
14,进程通信
Binder 注册与查找
Binder 通信原理
Binder 驱动注册
进程通信方案
Parcel 分析
Android Parcelable
Parcel 解析 Bundle 数据
15,事件管理
InputManager 服务启动
InputManager 之事件读取流程
InputManager 之 InputDispatcher 得到事件
InputManager 之派送给 Window
Flutter
Flutter 工程结构
Flutter 之Gradle配置
Flutter 打包产物
Flutter 架构
Flutter 通信流程
Flutter 初始化
FlutterBoost 源码
Flutter 之 StreamBuilder
Flutter 之 Widget 和 Element
Flutter 之 Bloc 原理探索
Flutter 之 mixin 关键字
Kotlin
算法和数据结构
HashMap 原理
LruCache 原理
LinkedBlockingQueue 源码
SpareArray 源码
栈实现
CopyOnWriteArrayList 并发
设计模式
任重而道远
网友评论