同樣是3年經驗的程序員,為什么別人月薪25K你卻只有15k
你有沒有靜下心來思考過:同樣是從青島北大青鳥京創(chuàng)校區(qū)教育學習出來的,同樣做了N年Java開發(fā),為什么你的技術比別人差很多?為什么別人每月26K你卻只有15K?
其實技術水平的高低和個人智商關系不大(畢竟能做Java編程開發(fā)大家都不會差),主要和勤奮程度、提升方法有關。
勤奮程度不必多說,全靠自我監(jiān)督和自制力。在這里我們詳細談談提升方法,畢竟好的提升方法會讓你事半功倍。到底有哪些有效的好方法,能幫助我們進階成Java高級工程師呢?
下面這3種方法,你應該加以重視:
1、吃透基礎技術
2、養(yǎng)成良好的閱讀源碼的習慣
3、有長期的技術學習規(guī)劃
下面,我們來一起逐條看看,特別是第 3 個方法。
吃透基礎技術
技術是各種上層技術共同的基礎。吃透基礎技術是為了更好地理解程序的運行原理,并基于這些基礎技術進化出更優(yōu)化的產品。很多分布式系統(tǒng)架構,以及高可用、高性能、高并發(fā)的解決方案基本都可以在基礎技術上找到它們的身影。所以,對基礎技術的學習才能夠更好地掌握更高維度的技術。
很多人會覺得底層技術博大精深,從語言、編程范式、算法和數據結構、計算機原理、網絡、數據庫、分布式技術等等,怎么可能有時間去掌握這么多東西呢。這確實需要持續(xù)學習的毅力,現(xiàn)在很多技術大牛仍在夯實擴展自己的底層技術,自己就更沒有理由忽視這一塊了不是嗎?
養(yǎng)成良好的閱讀源碼的習慣
源碼閱讀,尤其是針對你正在使用的第三方庫。千萬不要面試的時候,什么源碼都未學習過,理由就是業(yè)務太忙,更有甚者說“我覺得沒用”。
閱讀源碼要能回答兩個問題:要解決什么問題+是如何實現(xiàn)的?大到整個項目,小到一個模塊、函數,看的時候都要抱著這兩個問題去看。看完了這兩個問題能答上來,才是有效。
閱讀源碼時建議你這么做:
背景調查:看官網介紹、維基百科,了解主要功能,被應用于哪些項目以及基本的使用,掌握這些基本信息,使用框架:至少follow“Get Started”做個小demo(真的有人連API都沒調用過,上來就看代碼),盡可能編譯調試。能調試的代碼,幾乎沒有看不懂的,了解一些設計模式。這樣看到名字里有proxy,builder,factory之類的,就心領神會了。橫向分層,縱向分塊。代碼都是分模塊的,有的是core,有的是util,parser之類的,要知道看的是哪一層,哪一塊。有的小項目分層不明顯也不必強求
注意:要看的不只是語法上的技巧,更重要的是設計上的思路和原理。知易行難,把養(yǎng)成良好的閱讀源碼習慣提上日程吧!
有長期的技術學習規(guī)劃
Java進階之路離不開一個長期學習規(guī)劃的指引。你可以制定一個系統(tǒng)的學習路線,幫助你提升技術水平。當然,對于每個Java程序員來說,幾乎都有一個成為架構師的夢想。但是一個好的系統(tǒng)學習路線能夠幫你少走很多彎路。一個終點能夠走直線那么就沒必要去走S線。