2018 再次起航
2018年2月19日,戊戌年正月初四,还有两天就要结束春节假期了。经过春节假期各种聚会的洗礼,以及七大姑八大姨的问候,我深切的感受到2018年我的事业应该有个有一个质的突破了。趁着家里休息的都早,窝在自己的房间里面壁思考。终于开始提笔写出这一年的计划了,当然计划永远都是计划,计划赶不上变化。但是既然确定了计划就要最多程度的去执行。计划分为三大方向:
- 夯实基础
- 基础数据结构算法复习,以及常见算法题的总结整理
- 学习未在项目中应用的新技术,并应用到项目中。
夯实基础
记得当时刚从事 Android 这一行业的时候,好多过来人都语重心长的提醒我说咱们这一行,入门不难,提升技术是有很长一段路要走的。如果基础不行,技术很容易就遇到瓶颈。通过年前一段刻骨铭心的精力,我算是体会到只会用 API 和理解原理两个技术层次的区别了。因此想要提升自己首先要夯实基础。由于是临时总结的内容所以这些知识点并不一定全。
Java 基础知识:
- 内部类、静态内部类区别、使用场景
- 集合源码分析。
- 注解
- 反射
- 泛型
- 静态代理,动态代理
- 并发/异步
- 同步锁 synchronized 与 Lock 区别
- 什么是可重入锁
- 线程通信方法
- wait 和 sleep 区别
- wait-notify 模型
- 生产者消费者模型
- 线程池
- Json 数据解析
- Gson 框架的源码解析
- null 、"" 、数组嵌套解析
Android 基础知识
- 四大组件,生命周期启动方式等常见问题
- Service 两种不同的生命周期和开启方式
- BroadcastReceiver 相关问题
- Fragment 生命周期,Fragment 嵌套相关问题
- 自定义 View 相关
- 绘制流程
- 事件传递
- 滑动冲突
- View 的生命周期 方法回调时机
- 并发/异步
- Handler, HandlerThread,
- IntentService,AsyncTask
- 数据库 SQLite 相关操作
- 缓存实现(三级缓存实现方式)
- 进程间通讯
网络基础
- HTTP 和 HTTPS 的区别
- 七层模型
- TCP 三次握手,四次挥手
- Socket 的是使用,
- 自定义 Socket 传输格式
- Socket 保活,页面实时刷新,即时通信 Socket 的使用
进阶知识
数据结构
- 常见的排序方法(数组实现)
- 链表 队列 栈 的相关面试题
- 二叉树相关面试题
- 递归
- 刷题 leetCode
性能优化
- 内存优化
- UI 优化
- 布局优化
- 布局卡顿如何查找原因,Android 自带性能分析工具的使用
三方框架原理
- OkHttp Retrofit
- Rxjava2 Rxjava如何防止内存泄漏,生命周期绑定
- Glide
- EventBus RxBus
- DataBinding Dragger 简单使用
框架
- MVC,MVP
- 设计模式,单例,观察者等
- 组件化,插件化
- JVM 基础(《深入理解 Java 虚拟机》的阅读)
总结
做技术的人呢,除非能做到任督二脉全都打通,才能以不变应万变。回想行业大佬,或者就职于大公司的朋友,在羡慕他们的同时,也深深的体会的差距的存在。
最近有时候会恐慌,因为时间总是不等人,一天只有24小时,别人也在同样度过这个24个小时,向往的公司可能在24小时内招到很多合适的人选。也有时候恐惧,当我掌握了这门知识这么知识可能不在值钱了怎么办,以前我总会自我欺骗自己时间还多,慢慢来吧。现在体会到,当你体会到差距的时候,已经晚了。当你觉得晚了的时候,恰巧正是你奋起直追的最佳时机。
2018 踏下心来,一步步来。给自己一个光明的未来!
网友评论