程序員想要進(jìn)大廠,應(yīng)該怎么去學(xué)習(xí)?萬(wàn)字長(zhǎng)文干貨總結(jié)!
我知道,很多小伙伴其實(shí)最初學(xué)習(xí)的目的很簡(jiǎn)單,就是想進(jìn)大廠(我其實(shí)也是,哈哈),一方面是鍍金,一方面大廠的待遇也很誘人。

文章來(lái)源于:微信公眾號(hào)丨月伴飛魚(yú)
我覺(jué)得吧,為了想進(jìn)大廠而學(xué)習(xí),其實(shí)本身也是一件好事,至少有一個(gè)目標(biāo),也就有了學(xué)習(xí)的動(dòng)力,不過(guò)大家也不要把進(jìn)大廠想的那么難,比如現(xiàn)在像?字節(jié)?這種動(dòng)不動(dòng)就招上萬(wàn)人的公司來(lái)說(shuō),你們還是有很多機(jī)會(huì)的,當(dāng)然,不同部門(mén)不一樣的,如果你想進(jìn)抖音這種部門(mén),依然是很難的,所以大家既不要妄自菲薄,也不要妄自尊大,踏實(shí)學(xué)習(xí)就行。
有些人說(shuō)很難,大家也不要被嚇到了,并不是所有部門(mén)都這個(gè)難度的,難度全看面試官!
下面我會(huì)談?wù)勎覍?duì)學(xué)習(xí)的一些看法,僅是一家之言,有不同見(jiàn)解的,也可以私聊我,交流交流,共同進(jìn)步!

你的學(xué)習(xí)態(tài)度
首先我想說(shuō),如果大家想從這篇文章里得到一些速成的方法,那么就不用往下看了,學(xué)習(xí)是不可能速成的。
這里只有一些我個(gè)人總結(jié)的方法和技巧,分享出來(lái)也許對(duì)大家有幫助。
學(xué)習(xí)本身是一件?逆人性?的事,需要人持續(xù)付出,會(huì)讓人感到痛苦,想找各種理由放棄。
然而大部分人學(xué)習(xí)都是只有意識(shí)沒(méi)有行動(dòng),缺乏目標(biāo),缺乏實(shí)踐和堅(jiān)持。
所以,如果不能克服自己的弱點(diǎn),端正自己的學(xué)習(xí)態(tài)度,不能自律,不能堅(jiān)持,那么,無(wú)論有多好的方法,你都不可能學(xué)好。

注重基礎(chǔ)和原理
我還記得之前面?抖音?的時(shí)候,面試官拿了很多很底層,很偏的操作系統(tǒng),組成原理的知識(shí)問(wèn)我(只是我覺(jué)得偏,畢竟畢業(yè)一年多了,工作中也沒(méi)經(jīng)常用到過(guò)),我當(dāng)時(shí)心里的OS是:
我就靜靜地看你裝逼,我一個(gè)寫(xiě)CRUD的,會(huì)個(gè)這個(gè)還能寫(xiě)出花來(lái)!

不過(guò)面試官人很好,我面試完也問(wèn)過(guò)他,為啥要問(wèn)這些問(wèn)題呢,我們?cè)诠ぷ髦幸灿貌坏窖?,他也很耐心的回答我,估?jì)是被問(wèn)的太多次了,回答我還挺官方:
這些計(jì)算機(jī)基礎(chǔ)知識(shí)和原理性的東西和技術(shù),都是經(jīng)歷過(guò)長(zhǎng)時(shí)間的考驗(yàn)的,掌握了會(huì)給你很多啟示和幫助,比如:當(dāng)學(xué)習(xí)算法和數(shù)據(jù)結(jié)構(gòu)到一定程度的時(shí)候,會(huì)讓你知道,該如何設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)和算法來(lái)讓程序變得更為健壯和優(yōu)雅,比如:TCP擁塞控制中的方式,會(huì)讓你知道,設(shè)計(jì)一個(gè)以響應(yīng)時(shí)間來(lái)限流的中件間是什么樣的.........
還有就是作為計(jì)算機(jī)專(zhuān)業(yè)的學(xué)生,一些計(jì)算機(jī)基礎(chǔ)的東西還是一定要掌握的!
是啊,作為已經(jīng)畢業(yè)一年多的我來(lái)說(shuō),經(jīng)常性的CRUD,很多之前大學(xué)看過(guò)的操作系統(tǒng),網(wǎng)絡(luò)基礎(chǔ),組成原理這些書(shū)籍,畢業(yè)后就沒(méi)再看過(guò)了,當(dāng)然很多細(xì)節(jié)也忘了,所以感覺(jué)自己還不算一個(gè)合格的計(jì)算機(jī)專(zhuān)業(yè)畢業(yè)的學(xué)生。
所以就有了個(gè)想法,要把以前的這些書(shū)籍再看一遍,現(xiàn)在也已經(jīng)在落實(shí)了。

其實(shí)像這些前輩,既然這么重視計(jì)算機(jī)基礎(chǔ),必然有他們的道理,他們的經(jīng)驗(yàn)也比我豐富,知道哪些知識(shí)值得我們反復(fù)學(xué)習(xí),哪些只需要淺嘗輒止,或許未來(lái)這些知識(shí)會(huì)讓我們走的更遠(yuǎn)一些。
有時(shí)候,學(xué)習(xí)就像拉弓蓄力一樣,學(xué)習(xí)基礎(chǔ)知識(shí)感覺(jué)很枯燥很不實(shí)用,工作上用不到,然而學(xué)習(xí)這些知識(shí)是為了未來(lái)可以學(xué)得更快。
基礎(chǔ)打牢,學(xué)什么都快,而學(xué)得快就會(huì)學(xué)得多,學(xué)得多,就會(huì)思考得多,結(jié)果是學(xué)得更快……這種感覺(jué),對(duì)于想速成的人來(lái)說(shuō),很難體會(huì)。
所以請(qǐng)一定要注重基礎(chǔ)知識(shí)和原理上的學(xué)習(xí)!
構(gòu)建知識(shí)體系
有人說(shuō),Java的技術(shù)棧這么多,這么雜,咋學(xué)呀,學(xué)了這個(gè),忘了那個(gè),最后花了很多時(shí)間,也沒(méi)學(xué)到啥東西。
不可否認(rèn),Java的知識(shí)框架確實(shí)多且雜,想學(xué)好還是需要點(diǎn)時(shí)間的。
我記得我大學(xué)剛開(kāi)始學(xué)Java的時(shí)候,其實(shí)是挺心浮氣躁的,看完?21天Java從入門(mén)到精通?這本書(shū),就感覺(jué)自己學(xué)會(huì)了Java了,就開(kāi)始學(xué)各種中間件,框架,發(fā)現(xiàn)很多都弄不明白,后來(lái)我就知道了,我Java基礎(chǔ)還沒(méi)打牢呢,好多高階的知識(shí)并沒(méi)有掌握。
所以后來(lái)我總結(jié)就是,學(xué)習(xí)要踏踏實(shí)實(shí)的,一步一個(gè)腳印,慢慢來(lái),不能著急。
之后我在學(xué)一門(mén)技術(shù)時(shí),我會(huì)把他學(xué)透,才會(huì)去學(xué)其他的,這樣我也發(fā)現(xiàn)學(xué)的越來(lái)越快,因?yàn)榧夹g(shù)都是相通的,一個(gè)學(xué)好了,學(xué)其他的會(huì)很容易。

所以我想說(shuō)的是,大家在學(xué)習(xí)的時(shí)候要形成自己的知識(shí)樹(shù),先把Java基礎(chǔ)打好,然后再拓展學(xué)習(xí)其他中間件和框架,由點(diǎn)到面,把所有的知識(shí)點(diǎn)串起來(lái),你會(huì)學(xué)習(xí)的很輕松。
從知識(shí)樹(shù)的主干開(kāi)始做廣度或是深度遍歷,就得到了一整棵的知識(shí)樹(shù)。
最重要的是,當(dāng)出現(xiàn)一些我不知道的知識(shí)點(diǎn)時(shí),我就會(huì)往這棵知識(shí)樹(shù)上掛,而這樣一來(lái),也使得學(xué)習(xí)更為系統(tǒng)和全面。
這種畫(huà)知識(shí)圖的方式可以讓你從一個(gè)技術(shù)最重要最主干的地方出發(fā)開(kāi)始遍歷所有的技術(shù)細(xì)節(jié),也就是畫(huà)地圖的方式。
如果你不想在知識(shí)的海洋中迷路,你需要有一份地圖,所以,學(xué)習(xí)并不是為了要記憶那些知識(shí)點(diǎn),而是為了要找到一個(gè)知識(shí)的地圖,你在這個(gè)地圖上能通過(guò)關(guān)鍵路徑找到你想要的答案。
總結(jié):學(xué)習(xí)時(shí)一定要使用知識(shí)圖,學(xué)習(xí)并不是為了要記憶那些知識(shí)點(diǎn),而是為了要找到一個(gè)知識(shí)的地圖,你在這個(gè)地圖上能通過(guò)關(guān)鍵路徑找到你想要的答案。我相信,只要掌握了好的方法,你能做到的話(huà),你的學(xué)習(xí)效率一定提升很快
歸納總結(jié)
對(duì)自己的知識(shí)進(jìn)行總結(jié)和歸納是提高學(xué)習(xí)能力的一個(gè)非常重要的手段。這種總結(jié)和歸納能力會(huì)讓你更好地掌握和使用知識(shí)。
我們積累的知識(shí)越多,在知識(shí)間進(jìn)行聯(lián)系的能力就越強(qiáng),對(duì)知識(shí)進(jìn)行總結(jié)和歸納也就越輕松。而想要提高總結(jié)歸納的能力,首先要多閱讀,多積累素材,擴(kuò)大自己的知識(shí)面,多和別人討論,多思考,從而見(jiàn)多識(shí)廣。
不過(guò),我們需要注意的是,如果只學(xué)了部分知識(shí)或者還沒(méi)有學(xué)透,就開(kāi)始對(duì)知識(shí)進(jìn)行總結(jié)歸納,那么總結(jié)歸納出來(lái)的知識(shí)結(jié)構(gòu)也只能是混亂和幼稚的。

因此,學(xué)習(xí)的開(kāi)始階段,可以不急于總結(jié)歸納,不急于下判斷,做結(jié)論,而應(yīng)該保留部分知識(shí)的不確定性,保持對(duì)知識(shí)的開(kāi)放狀態(tài)。當(dāng)對(duì)整個(gè)知識(shí)的理解更深入,自己站的位置更高以后,總結(jié)和歸納才會(huì)更有條理。
總結(jié)歸納更多是在復(fù)習(xí)中對(duì)知識(shí)的回顧和重組,而不是一邊學(xué)習(xí)一邊就總結(jié)歸納。
就比如?寫(xiě)博客文章?就是一種很好的鍛煉總結(jié)歸納能力的方式,能把一個(gè)知識(shí)點(diǎn)總結(jié)的很好也不是一件容易的事情。
所以大家可以時(shí)常鍛煉這種能力,能幫助大家更好的掌握知識(shí)
多實(shí)踐并總結(jié)
所謂實(shí)踐出真知,也就是學(xué)以致用,不然只是紙上談兵。
只有實(shí)踐過(guò),你才能對(duì)學(xué)到的東西有更深的體會(huì)。就像看 《Effective Java》這本書(shū)介紹的一些經(jīng)驗(yàn),一開(kāi)始看的時(shí)候,你會(huì)覺(jué)得好像是那么回事,這樣寫(xiě)確實(shí)好,但又不是特別清楚好在哪,當(dāng)你真正實(shí)踐并踩過(guò)坑之后,才能夠真正地體會(huì)為什么是這樣的。
還有些東西是書(shū)本上學(xué)不到的,只能在工作中學(xué)習(xí),比如一些線(xiàn)上問(wèn)題,特別是在業(yè)務(wù)復(fù)雜,且?高并發(fā)?的場(chǎng)景下會(huì)遇到很多很多,可以經(jīng)常性的作出總結(jié),進(jìn)行復(fù)盤(pán),這些教訓(xùn),你經(jīng)歷過(guò),思考過(guò),你就比別人多了一些經(jīng)驗(yàn),這些都是最寶貴的東西。
堅(jiān)持堅(jiān)持再堅(jiān)持
重要的事情說(shuō)三遍!??!
堅(jiān)持是一句正確的廢話(huà)!還是回到開(kāi)頭,任何事情你不堅(jiān)持都是空談,什么技巧,學(xué)習(xí)方法,都沒(méi)用!
希望大家有足夠的勇氣堅(jiān)持下去,道阻且長(zhǎng),行則將至。

學(xué)會(huì)感恩
我自己的學(xué)習(xí)道路還是挺曲折的,大學(xué)的時(shí)候因?yàn)橐粋€(gè)人的面經(jīng),讓我有了持續(xù)學(xué)習(xí)的動(dòng)力,畢業(yè)后因?yàn)樯磉吪笥训墓膭?lì),讓我沒(méi)有停下學(xué)習(xí)步伐,所以我一直挺感謝這些人,是他們讓我沒(méi)有放棄自己。
人都是相互的,你對(duì)別人好,別人同樣也會(huì)對(duì)你好,別人幫助過(guò)你,要學(xué)會(huì)感恩,哪怕是一點(diǎn)點(diǎn)幫助,未來(lái)可能就影響你的一生呢,也說(shuō)不定的。
人生這條路上,或許你會(huì)遇到貴人,一句話(huà)點(diǎn)醒自己,從此發(fā)奮圖強(qiáng),走上康莊大道,當(dāng)自己取得一點(diǎn)點(diǎn)成就的時(shí)候,也不要忘了最開(kāi)始那個(gè)點(diǎn)醒自己的人。
感恩是一種美德,希望大家都能做一個(gè)懷著感恩之心努力奮斗的人!
最后還有句話(huà)是這么說(shuō)的:栽一棵樹(shù)最好的時(shí)間是十年前,其次是現(xiàn)在。對(duì)于學(xué)習(xí)編程或者正在工作的朋友,如果你想更好的提升你的編程能力幫助你提升水平!筆者這里或許可以幫到你~
微信公眾號(hào):C語(yǔ)言編程學(xué)習(xí)基地
分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門(mén)教程)
歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長(zhǎng)比自己琢磨更快哦!
