LearningNotes
第一部分:
-
- Android基础知识
- Android内存泄漏总结
- Handler内存泄漏分析及解决
- Handler、Looper、Message、MessageQueue基础流程分析
- Android性能优化
- ListView详解
- RecyclerView和ListView的异同
- AsyncTask源码分析
- 插件化技术
- 自定义控件
- 事件分发机制
- ANR问题
- Art和Dalvik的区别
- Android关于OOM的解决方案
- Fragment
- Activity&Fragment
- SurfaceView
- Android几种进程
- APP启动过程
- Activity启动流程以及界面展示过程
- 图片三级缓存
- Bitmap的分析与使用
- 热修复的原理
- AIDL
- Binder机制
- Zygote和System进程的启动过程
- Android中的MVC,MVP和MVVM
- MVP
- Android开机过程
- Retrofit源码分析
- Glide源码分析
- EventBus用法详解
- EventBus源码分析
- Android ORM 框架之 greenDAO 使用心得
- Data Binding(数据绑定)用户指南
- RxJava
- 设计一套图片异步加载缓存方案
- Android UI适配
- Gradle
- 查漏补缺
- Git操作
-
- 面向对象六大原则
- 单例模式
- Builder模式
- 原型模式
- 简单工厂
- 工厂方法模式
- 抽象工厂模式
- 策略模式
- 状态模式
- 责任链模式
- 解释器模式
- 命令模式
- 观察者模式
- 备忘录模式
- 迭代器模式
- 模板方法模式
- 访问者模式
- 中介者模式
- 代理模式
- 组合模式
- 适配器模式
- 装饰模式
- 享元模式
- 外观模式
- 桥接模式
第二部分
-
- Java并发基础知识
- 生产者和消费者问题
- Thread和Runnable实现多线程的区别
- 线程中断
- 守护线程与阻塞线程
- synchronized
- 多线程环境中安全使用集合API
- 实现内存可见的两种方法比较:加锁和volatile变量
- 死锁
- 可重入内置锁
- 使用wait/notify/notifyAll实现线程间通信
- NIO
第三部分
- DataStructure(数据结构)
-
- 排序
- 查找
- 《剑指Offer》
- 《程序员面试金典》
- 《LeetCode》
- 《程序员代码面试指南(左程云)》