何为口水话呢?
就是面试官问你相关问题的时候,你应该如何说的话。
有没有遇到这样的场景,明明面试官问我的问题我会,我也看过甚至我自己也写过相关博客,但是在回答的时候还是支支吾吾说不清楚,或者不分轻重想到啥就说啥。
口水话专门用来解决这个问题,它不同于一般博客语言琐碎,而是语言精炼,突出重点,以沟通的方式而非说教的形式去阐述问题。
目前口水话涉及常见的 Android、Java、计算机网络问题,这些都是面试常见题。
RecyclerView 相关口水话 View 体系相关口水话 动画相关口水话 Handler 口水话
四大组件启动流程口水话 Binder 相关口水话 系统启动流程口水话
Gradle 相关口水话 性能优化相关口水话 热修复、插件话相关口水话
JVM 相关口水话 Java 并发相关口水话 线程池口水话 Java/Android 集合源码相关口水话
HTTP1.x、HTTPS、HTTP2相关口水话 TCP 口水话
1. 熟练掌握 Java,包括注解、反射、泛型、异常等相关知识,熟悉其在 JVM 的实现原理
2. 熟悉 Java/Android 中常见的集合源码,包括 List、Set、Map、Queue/Deque 等
3. 对 Java 并发有一定理解,熟悉 synchronized、volatile、原子类等实现原理
4. 熟悉 JVM 相关知识,包括内存区域、内存模型、GC、类加载机制、编译优化等
5. 熟练掌握 Android 应用层开发相关知识,熟悉四大组件、动画的使用
6. 熟悉 View 相关体系,包括 View 绘制流程、事件分发、刷新机制
7. 熟悉 Binder 进程间通信机制,熟悉其通信模型以及完整的通信流程
8. 熟悉 Android 的系统启动流程,Activity、Service 启动流程、Handler 消息机制、SP 源码等
9. 熟悉 Gradle 相关知识,包括自定义 Task、编译打包流程、自定义 Gradle Plugin、编译优化等
10. 熟悉插件化的实现原理,静态代理式和 Hook 式;了解热修复的实现原理
11. 了解常见的性能优化手段,做过包体积优化、布局优化、内存优化等
12. 熟悉计算机网络相关协议,包括 TCP/IP、HTTP/1.x、HTTP2、HTTPS 等
这些知识点,在上述口水话里都有涉及,还有一些设计模式我没写上去,毕竟我也不熟悉...
下面就是博客系列:
Activity Service BroadcastReceiver ContentProvider Fragment
WebView RecyclerView ViewPager ConstraintLayout 自定义 View
- Android 数据持久化
- 自动化埋点
- 动画
- Context
- Dalvik 与 ART
- APT
- Bundle、ArrayMap、SparseArray
- Hook 原来也就这么回事
- Serializable 与 Parceable
- 轻松入门 Socket 编程
- 热修复
- 事件分发机制
- Handler 消息循环机制
- AsyncTask 源码分析
- HandlerThread 源码分析
- IntentService 源码分析
- View 工作原理
- AOP
- 自定义 Lint
- Choreagrapher
Gralde Plugin 实践之 TinyPng Plugin
《Android Gradle 权威指南读书笔记》
Gradle 练习之一 --- 输出项目第三方库以及本地依赖库的权限信息
- Class 文件格式
[I/O 优化]
[UI 优化]
[卡顿优化]
[启动优化]
[崩溃优化]
[电量优化]
《深入理解 Android 卷一》
《深入理解 Android内核设计思想》
《Android 源代码情景分析》
-
Binder 进程间通信系统
-
四大组件的启动过程
深入理解 Class 文件格式
《Web 性能权威指南》
《HTTP2 基础教程》
《深入理解计算机系统》
《剑指 Offer》