如何高效的學(xué)習(xí)技術(shù)

不少朋友每天都閱讀技術(shù)文章,但是第二天就忘干凈了。工作中領(lǐng)導(dǎo)和同事都認可你的溝通和技術(shù)能力,但是跳槽面試卻屢屢碰壁。
工作五年十年后,別人成了架構(gòu)師,自己還在基層打滾,原因是什么?
把自己當(dāng)成一臺計算機,既有輸入,也要有輸出,用輸出倒逼輸入。
學(xué)什么
基礎(chǔ)與應(yīng)用
以數(shù)據(jù)結(jié)構(gòu)和算法為例,大家閱讀一下Java的BitSet的源碼,里面有大量的移位操作,移位運算掌握的好,看這份源碼就沒問題。
以Java工程師應(yīng)該掌握的知識為例,按重要程度排出六個梯度:
第一梯度:計算機組成原理、數(shù)據(jù)結(jié)構(gòu)和算法、網(wǎng)絡(luò)通信原理、操作系統(tǒng)原理; 第二梯度:Java基礎(chǔ)、JVM內(nèi)存模型和GC算法、JVM性能調(diào)優(yōu)、JDK工具、設(shè)計模式; 第三梯度:Spring系列、Mybatis、Dubbo等主流框架的運用和原理; 第四梯度:MySQL(含SQL編程)、Redis、RabbitMQ/RocketMQ/Kafka、ZooKeeper等數(shù)據(jù)庫或者中間件的運用和原理; 第五梯度:CAP理論、BASE理論、Paxos和Raft算法等其他分布式理論; 第六梯度:容器化、大數(shù)據(jù)、AI、區(qū)塊鏈等等前沿技術(shù)理論;
有同學(xué)認為第五梯度應(yīng)該在移到第一梯度。其實很多小公司的日活猶如古天樂一樣平平無奇,離大型分布式架構(gòu)還遠得很。學(xué)習(xí)框架和中間件的時候,順手掌握分布式理論,效果更好。
廣度與深度
個人興趣并不局限技術(shù)領(lǐng)域,可以是其他學(xué)科。我有個朋友喜歡玩山地自行車,還給一些做自行車話題的自媒體投稿。久而久之,居然能夠?qū)懸皇趾梦恼铝耍蚁嘈潘材軐懞眉夹g(shù)文檔。
哲學(xué)
舉個例子,當(dāng)軟件系統(tǒng)遇到性能問題,嘗試下面兩種哲學(xué)思想提升性能:
空間換時間:比如引入緩存,消耗額外的存儲提高響應(yīng)速度。 時間換空間:比如大文件的分片處理,分段處理后再匯總結(jié)果。
設(shè)計穩(wěn)健高可用的系統(tǒng),嘗試從三個方面考慮問題:
存儲:數(shù)據(jù)會丟失嗎,數(shù)據(jù)一致性怎么解決。 計算:計算怎么擴容,應(yīng)用允許任意增加節(jié)點嗎。 傳輸:網(wǎng)絡(luò)中斷或擁塞怎么辦。
從無數(shù)的失敗或者成功的經(jīng)驗中,總結(jié)出高度概括性的方案,讓我們下一步做的更好。
英語
如果英語足夠好,直接閱讀一手英語資料,避免他人翻譯存在的謬誤。
怎么學(xué)
知識體系

克服遺忘
大腦的遺忘是有規(guī)律的,先快后慢。一天后,學(xué)到的知識只剩下原來的25%,甚至更低。隨著時間的推移,遺忘的速度減慢,遺忘的數(shù)量也就減少。

每個人的遺忘程度都不一樣,建議第二天復(fù)習(xí)前一天的內(nèi)容,七天后復(fù)習(xí)這段時間的所有內(nèi)容。
碎片時間
學(xué)習(xí)復(fù)雜的知識,需要大段的連續(xù)時間。圖書館是個好地方,安靜氛圍好。手機放一邊,不要理會QQ微信,最好閱讀紙質(zhì)書,泡上一整天。有些城市出現(xiàn)了付費自習(xí)室,提供格子間、茶水等等,也是非常好的選擇。
用起來
技術(shù)分享

堅持寫技術(shù)博客,別在意你寫的東西在網(wǎng)上已經(jīng)重復(fù)千百遍。當(dāng)自己動手的時候,才會意識到眼高手低。讓文章讀起來流暢清晰,需要嘔心瀝血的刪改。
寫作是對大腦的長期考驗,想不到肯定寫不出,想不清楚肯定寫不清楚。
造個輪子
建議造一個簡單的MQ,你能用到通信協(xié)議、設(shè)計模式、隊列等許多知識。在造輪子的過程中,你會頻繁的翻閱各種手冊或者博客,這就是用輸出倒逼輸入。
作者:編碼磚家
文章地址:cnblogs.com/xiaoyangjia/p/11535486.html
