1 . 吃透基础知识

基础技术是各种上层技术共同的基础。吃透基础技术是为了更好地理解程序的运行原理,并基于这些基础技术进化出更优化的产品。很多分布式系统架构,以及高可用、高性能、高并发的解决方案基本都可以在基础技术上找到它们的身影。所以,对基础技术的学习才能够更好地掌握更高维度的技术。


底层技术博大精深,从语言、编程范式、算法和数据结构、计算机原理、网络、数据库、分布式技术等等,要掌握这么繁多的底层技术栈,需要持续学习的毅力。纵观很多技术大牛仍在夯实扩展自己的底层技术,自己就更应该持续充电。


2 . 良好的源码阅读习惯

阅读源码要能回答两个问题:要解决什么问题+是如何实现的?大到整个项目,小到一个模块、函数,看的时候都要抱着这两个问题去看。看完了这两个问题能答上来,才是有效。

  • 阅读源码时建议你这么做:

背景调查:看官网介绍、维基百科,了解主要功能,被应用于哪些项目以及基本的使用,掌握这些基本信息
使用框架:至少follow“Get Started”做个小demo(真的有人连API都没调用过,上来就看代码)
尽可能编译调试。能调试的代码,几乎没有看不懂的
了解一些设计模式。这样看到名字里有proxy,builder,factory之类的,就心领神会了
横向分层,纵向分块。代码都是分模块的,有的是core,有的是util,parser之类的,要知道看的是哪一层,哪一块。有的小项目分层不明显也不必强求

注意:要看的不只是语法上的技巧,更重要的是设计上的思路和原理。知易行难,需要坚持!


3 . 长期的技术学习规划
这个就需要对自己的职业生涯有一个规划,三年、五年、十年计划,每个阶段要达到什么级别,从而来学习和夯实自己的技术栈。朝着既定的方向努力,你会遇见更好的自己!

以上借鉴了占小狼的公众号内容+自己的理解总结一下,与君共勉。