你有没有静下心来思考过:同样是做了x年Java开发,为什么你的技术比别人差很多? 其实技术水平的高低和个人智商关系不大(毕竟能做Java编程开发大家都不会差),主要和勤奋程度、提升方法有...

你有没有静下心来思考过:同样是做了x年Java开发,为什么你的技术比别人差很多?

 

其实技术水平的高低和个人智商关系不大(毕竟能做Java编程开发大家都不会差),主要和勤奋程度、提升方法有关。

 

勤奋程度不必多说,全靠自我监督和自制力。在这里我们详细谈谈提升方法,毕竟好的提升方法会让你事半功倍。到底有哪些有效的好方法,能帮助我们进阶成Java高级工程师呢?

 

下面这3种方法,你应该加以重视:

  1. 吃透基础技术

  2. 养成良好的阅读源码的习惯

  3. 有长期的技术学习规划

下面,我们来一起逐条看看,特别是第 3 个方法。

 

1.吃透基础技术

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

很多人会觉得底层技术博大精深,从语言、编程范式、算法和数据结构、计算机原理、网络、数据库、分布式技术等等,怎么可能有时间去掌握这么多东西呢。这确实需要持续学习的毅力,现在很多技术大牛仍在夯实扩展自己的底层技术,自己就更没有理由忽视这一块了不是吗?

 

2.养成良好的阅读源码的习惯

   

源码阅读,尤其是针对你正在使用的第三方库。千万不要面试的时候,什么源码都未学习过,理由就是业务太忙,更有甚者说“我觉得没用”。

 

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

 

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

背景调查:看官网介绍、维基百科,了解主要功能,被应用于哪些项目以及基本的使用,掌握这些基本信息

使用框架:至少follow“Get Started”做个小demo(真的有人连API都没调用过,上来就看代码)

尽可能编译调试。能调试的代码,几乎没有看不懂的

了解一些设计模式。这样看到名字里有proxy,builder,factory之类的,就心领神会了

横向分层,纵向分块。代码都是分模块的,有的是core,有的是util,parser之类的,要知道看的是哪一层,哪一块。有的小项目分层不明显也不必强求

注意:要看的不只是语法上的技巧,更重要的是设计上的思路和原理。知易行难,把养成良好的阅读源码习惯提上日程吧!

 

3 有长期的技术学习规划

   

Java进阶之路离不开一个长期学习规划的指引。你可以制定一个系统的学习路线,帮助你全面提升技术水平。当然,对于每个Java程序员来说,几乎都有一个成为架构师的梦想。

 

下面是一个我长期积累出来的系统学习图谱,当然我也有一个专门的交流学习群:859729143 点击加入Java架构群。群里每天都有新视频资料更新,每天晚上大牛直播讲课。

分布式专题

同是3年开发经验,为什么你的技术比别人差很多?_架构师

微服务架构

同是3年开发经验,为什么你的技术比别人差很多?_架构师_02

性能优化

同是3年开发经验,为什么你的技术比别人差很多?_java_03

双十一电商项目实战

同是3年开发经验,为什么你的技术比别人差很多?_java_04

源码分析

同是3年开发经验,为什么你的技术比别人差很多?_源码_05

团队协作

同是3年开发经验,为什么你的技术比别人差很多?_程序员_06