再見(jiàn)了……自學(xué)編程
本文原本是準備只發(fā)在星球內的,可是我覺(jué)得這篇文章對那些自學(xué)編程的朋友應該很有幫助,于是就發(fā)出來(lái)給大家,也希望球友不要介懷,后面肯定會(huì )有更多星球專(zhuān)屬內容!
大家存在的問(wèn)題
為什么說(shuō)自學(xué)編程很難?因為編程,一直都是一件有門(mén)檻的事情,不然你以為為啥別人拿20K,你只能拿5K啊……
先看大家在自學(xué)編程中遇到的一些典型問(wèn)題:
1、學(xué)了就忘,知識記不住,學(xué)了等于白學(xué)
2、越學(xué)越感覺(jué)自己啥也不會(huì )
3、越學(xué)越覺(jué)得知識太多,而且雜亂
4、覺(jué)得自己付出很多,貌似沒(méi)啥收獲
5、一旦遇到問(wèn)題,無(wú)從下手
6、陷入深深焦慮
7、無(wú)限循環(huán)
以上都是大家在自學(xué)編程中會(huì )遇到的一些非常典型的共性問(wèn)題,為什么會(huì )這樣,除了上面說(shuō)的編程本身就是一件有門(mén)檻的事情之外,另外一個(gè)重要的原因就是,這個(gè)行業(yè)啊,本身就是一個(gè)知識密度大且問(wèn)題繁多,而且技術(shù)發(fā)展更新迭代非???,再加上現在卷的厲害,你稍不留神,你就落后了!
之所以出現上述種種無(wú)問(wèn)題,一句話(huà)就是“你沒(méi)有屬于自己的方法”
為什么我覺(jué)得方法很重要我一直覺(jué)得自己是個(gè)普通人,所以一些共性問(wèn)題我基本都會(huì )遇到,我不覺(jué)得自己有什么過(guò)人的天賦可以讓我輕輕松松去解決工作學(xué)習和生活中遇到的某些問(wèn)題,就比如編程自學(xué)這塊,我也是遇到好多的問(wèn)題,其過(guò)程真的是無(wú)比痛苦,想必一定有感同身受之人!
那面對這個(gè)情況,我從很早就產(chǎn)生一個(gè)想法,在我學(xué)習當中,我必須給自己找一個(gè)方向,定一個(gè)路線(xiàn),而且是一個(gè)正確有效的路線(xiàn),然后我可以按照這個(gè)方向,盡管去努力就好了,在我是個(gè)不怎么聰明且沒(méi)有天賦的情況下,我必須有一個(gè)可以踐行的準則以及指導我前進(jìn)的方向,否則,我覺(jué)得我的人生會(huì )很亂,會(huì )浪費很多時(shí)間也不會(huì )有些什么明顯的進(jìn)步!
這就是我在學(xué)習編程中一直很重視學(xué)習方法的原因,我覺(jué)得有了學(xué)習方法之后,學(xué)習會(huì )更加的明確,也會(huì )對未來(lái)更加的充滿(mǎn)希望,盡管我的學(xué)習方法可能并不是很正確或者存在不少的瑕疵,但是這些都不重要,只要有了,我覺(jué)得就有了方向,我就可以在這個(gè)方向上只管努力就行了,而且隨著(zhù)自己的認知不斷升級,我的這個(gè)方法也會(huì )不斷的更新迭代,但是如果沒(méi)有這個(gè)方法作為根基,那我想,我的學(xué)習會(huì )是一團糟,就好比那無(wú)頭蒼蠅一般……
人和神是不同的你相信人和人是有智商差別的嗎?
慢慢的我相信了,而且有的人真的讓你感覺(jué)像神一樣,我們學(xué)習Java的都應該認識一個(gè)神級人物,就是這位:
大名鼎鼎的“Doug Lea”,就是他,寫(xiě)了Java中的并發(fā)包,你要是仔細了解他之后,你真的會(huì )發(fā)出一聲感嘆:
人和神是不同的
在編程學(xué)習這件事情上,有些人真的是特別的強,你不服都不行,我就知道很多比我年齡還小的,人家就是架構師,資深專(zhuān)家,被譽(yù)為天才少年什么的,不服?不行??!
在你還在為知識學(xué)不會(huì )發(fā)愁的時(shí)候,人家已經(jīng)是精通各種底層原理了,你怎么比,我曾經(jīng)咨詢(xún)過(guò)一位這樣的大佬:
“請問(wèn)你是如何解決知識遺忘的問(wèn)題呢?記筆記嗎?”
“不,我從不記筆記,忘了就再看看,用的多了就記住了,用的不多的記它干嘛”
說(shuō)的對嗎?我覺(jué)得很有道理,但是,我知道自己達不到這樣的層次,或者說(shuō)很難去這樣做,所以,我還是習慣去記筆記,把一些知識學(xué)習之后經(jīng)過(guò)自己的思考重新整理梳理,再用自己的話(huà)敘述出來(lái),記錄下來(lái),我覺(jué)得這對我非常有幫助,而且可以幫我解決知識遺忘的問(wèn)題!
在理解了人和人始終存在差別之后,我發(fā)現,選擇適合自己的才是最重要的!
分享我的方法那接下來(lái)我就重點(diǎn)介紹那么久以來(lái)我總結的學(xué)習方法,希望能幫助大家更好的自學(xué)編程!
有些人是不太相信有什么學(xué)習方法可言的,覺(jué)得只是唯手熟爾,而且認為方法論的東西是一件很虛的東西,這個(gè)我不反對,我一直覺(jué)得,任何一件事情,都會(huì )存在反對與支持,這個(gè)太正常了,我甚至覺(jué)得這是一件好事!
所以,接下來(lái)的分享可能更加適合那些對“方法”二字沒(méi)什么偏見(jiàn)或者抵觸的人!
首先,我也承認這樣的一個(gè)事情,就是“方法”的確是一個(gè)很虛的東西,以至于有的時(shí)候我在看別人分享的方法之后覺(jué)得說(shuō)了跟沒(méi)說(shuō)一樣,或者根本不知道在說(shuō)什么,又或者方法有些道理,但是沒(méi)有指明該怎么做以至于這個(gè)方法只能是個(gè)很虛的概念!
所以我在整理“方法”的時(shí)候盡量避免自嗨以及盡量可執行化,就是讓你明白一個(gè)理念之后你還能知道怎么去做!
先說(shuō)怎么做以下是我整理總結的自學(xué)編程的步驟,無(wú)論你是學(xué)習Java還是python,你都可以按照下面的步驟去操作:
第一階段:攬全局第二階段:重實(shí)戰默認你是完全零基礎,新手小白,找本書(shū),或者一套視頻教程,或者一套Java自學(xué)手冊,比如慶哥寫(xiě)的這個(gè),開(kāi)始學(xué)起來(lái),跟著(zhù)學(xué)就對了,先學(xué)完一本書(shū),看完一套視頻教程再說(shuō),其他的都是在浪費時(shí)間!同時(shí)學(xué)的時(shí)候一定要進(jìn)行教程式筆記記錄,否則你的學(xué)習將毫無(wú)用處,不懂教程式筆記的一定找慶哥請教,對你們太重要了!
第三階段:讀源碼我在初期自學(xué)Java的時(shí)候就陷入了這樣的問(wèn)題,就是只學(xué)理論,實(shí)戰幾乎沒(méi)有,導致學(xué)習效果很差,在進(jìn)行完第一階段之后,記得,直接懟項目,查漏補缺,發(fā)現知識盲點(diǎn),然后去攻克,這樣進(jìn)步才快!
第四階段:補內功這一階段是專(zhuān)題深入式的學(xué)習,就是把一些高頻重點(diǎn)知識點(diǎn)單獨拿出來(lái)進(jìn)行專(zhuān)題式攻克學(xué)習,要做到的就是不僅知其然還要知其所以然!
第五階段:成面霸這一階段就是學(xué)習計算機基礎知識了,這個(gè)知識的重要性不需要多少,學(xué)就對了,萬(wàn)丈高樓平地起,勿在浮沙筑高臺!
相信我,面試這一關(guān)值得你花心思去學(xué)習!
好了以上就是學(xué)習Java的具體步驟了,當然,限于篇幅,我只說(shuō)了精華,其中有不了解的,可以找慶哥詳細探討!
再次強調一下,以上說(shuō)的是總的學(xué)習步驟,但是我發(fā)現還是有很多人看了不知道怎么做,這里簡(jiǎn)單解釋一下,以上五個(gè)具體步驟是告訴你該學(xué)習哪些內容,但是需要你自己去找學(xué)習資料的,比如第一階段攬全局,你得去買(mǎi)一本書(shū)或者找一套視頻教程來(lái)學(xué)習,第二階段需要你自己去找相應的實(shí)戰項目去學(xué)習,懂了吧,告訴你怎么學(xué)習了,你得自己找資源去學(xué)習??!
現在這網(wǎng)絡(luò )時(shí)代,最不缺的就是學(xué)習資源了,千萬(wàn)不要想著(zhù)別人什么都給你準備好,除非你愿意付費!
重點(diǎn)說(shuō)方法那接下來(lái)我將重點(diǎn)解讀下我所踐行的學(xué)習方法,總結起來(lái)就一句話(huà):
系統化學(xué)習和教程式筆記
看起來(lái)很簡(jiǎn)單,理念需要仔細理解,否則你是get不到真正的點(diǎn)的!
我相信現在你一定感覺(jué)到,我們日常生活中的碎片化時(shí)間越來(lái)越多了,我不知道你是怎么利用這些碎片化時(shí)間的,首先說(shuō)明一點(diǎn),我認為,碎片化時(shí)間是不適合學(xué)習的!
為了讓大家有個(gè)更清晰的認識,我還是舉幾個(gè)碎片化時(shí)間的例子吧:
1、吃飯的時(shí)候,尤其在外面吃飯的時(shí)候
2、等車(chē),坐車(chē),排隊等
3、上廁所……
4、睡前
5、放空
6、……
OK,有這個(gè)場(chǎng)景概念了吧,那這些時(shí)間我認為是不適合學(xué)習的,對于這些時(shí)間,我通常這樣利用:
1、刷抖音
2、看文章(技術(shù)文章一定看自己學(xué)過(guò)寫(xiě)過(guò)的,其他的不看)
咋樣,我的利用方式和你一樣嗎?有的人會(huì )說(shuō),這樣的時(shí)間,我一般會(huì )用來(lái)刷劇,其實(shí)我之前也會(huì )這樣,但是慢慢的我發(fā)現刷劇這件事情也是需要系統化時(shí)間來(lái)進(jìn)行的,否則,幸福感太低!
那說(shuō)了這么多,啥是系統化學(xué)習呢?其實(shí)對于系統化學(xué)習這個(gè)概念,網(wǎng)上也有不同解讀,可能我這個(gè)是最普通的了,要說(shuō)系統化學(xué)習,需要先說(shuō)說(shuō)什么是系統化?
對比之前說(shuō)的碎片化時(shí)間,這里的系統化我指的是就是那些系統化的時(shí)間來(lái)說(shuō)的,所謂系統化的時(shí)間就是指的你有可自由利用的一整塊的時(shí)間,我通常將其限定為最低一小時(shí),也就是說(shuō)在這一小時(shí)里你可以想干什么就干什么,你是可以完全自由支配,不會(huì )有人來(lái)打斷,可以持續利用完這一小時(shí)。
那以上是針對時(shí)間而言的系統化,那系統化的學(xué)習是怎樣的呢?這個(gè)要拿碎片化的學(xué)習來(lái)對比,什么是碎片化的學(xué)習呢?比如,突然看到一篇講解CopyOnWriteArrayList,然后你就去看看,然后過(guò)了一會(huì )又看到講解IOC的文章,好在去看看,過(guò)了一個(gè)小時(shí)又在B站看jvm內存模型,晚上的時(shí)候又在學(xué)習分布式鎖,我把這樣的學(xué)習稱(chēng)為碎片化的學(xué)習!
看似這一天你又是學(xué)習多線(xiàn)程,又是學(xué)習虛擬機,還有框架什么的,但是在我看來(lái),沒(méi)什么用,除了自我滿(mǎn)足以外,你的學(xué)習并沒(méi)有什么效果!這種碎片化學(xué)習是我不提倡的!
而且,如果上述碎片化學(xué)習過(guò)程中你沒(méi)有任何產(chǎn)出,我覺(jué)得就是存粹在消磨時(shí)間而已!
??想一下,為什么你會(huì )覺(jué)得知識學(xué)不完,知識多,學(xué)了就忘,學(xué)了很多感覺(jué)還是不怎么會(huì )?get到了嗎?
怎么辦?你需要的是系統化學(xué)習!
上面解釋了什么是系統化時(shí)間,而這個(gè)系統化的學(xué)習指得就是在系統化時(shí)間內去集中學(xué)習一個(gè)專(zhuān)題知識,直到你將其80%的常見(jiàn)知識點(diǎn)都學(xué)完!
舉例來(lái)說(shuō),就是在你可自由支配的這一個(gè)小時(shí)的系統化時(shí)間內集中去學(xué)習多線(xiàn)程的知識,當然,可能這一個(gè)小時(shí)你并不會(huì )學(xué)完多線(xiàn)程,你也不可能學(xué)完,但是你要記住,你的下一個(gè)系統化時(shí)間一定還是學(xué)習這個(gè)多線(xiàn)程!
另外,知識都是可以深入挖掘的, 很多都不是你一時(shí)間內可以完全掌握的,所以不要想著(zhù)把所有的都全部弄懂學(xué)會(huì ),不可能也不現實(shí),只需要掌握80%即可,就是常見(jiàn)的你得學(xué)會(huì ),怎么把握這個(gè)常見(jiàn),看看面試題會(huì )問(wèn)哪些,面試題上出現的你得搞懂!
總的來(lái)說(shuō),什么是系統化學(xué)習?主要就是“系統化”二字,就是盡量整體,而不是被分散,時(shí)間要盡可能是一整塊大時(shí)間,學(xué)習要是集中學(xué)習某一塊知識,整體,整體,整體,get到了嗎?
脫離了“教程式筆記”的“系統化學(xué)習”啥也不是!
我這里介紹的系統化學(xué)習和教程式筆記必須是相輔相成的,少了誰(shuí)都不行,這是一個(gè)完整的學(xué)習方法,那什么是“教程式筆記”?
說(shuō)到底還是筆記,但是絕不是最低級的那種筆記,什么是最低級的筆記:
從書(shū)中摘抄或者視頻中截屏然后粘貼到文檔保存
我把這種筆記稱(chēng)作最低級的筆記,我發(fā)現有大量的人是這樣記筆記的,不能說(shuō)沒(méi)用,只能說(shuō)作用微乎其微,其實(shí)最好的一種筆記方式就是寫(xiě)博客,這里面有個(gè)很重要的點(diǎn)就是,博客一定是這樣的:
1、對應的知識自己學(xué)過(guò)一遍
2、有自己的理解和思考
3、相關(guān)代碼示例自己實(shí)操過(guò)
4、用自己的話(huà)敘述整理
5、寫(xiě)出文章,不僅自己能看,別人也可以看
這才是一篇好的筆記,也是一篇合格的博客,那我這里的教程式筆記就是這樣的很多個(gè)博客組成的教程,還記得之前說(shuō)的系統化學(xué)習吧,在你進(jìn)行系統化學(xué)習的時(shí)候,針對每一個(gè)知識點(diǎn)都要寫(xiě)一篇這樣的博客,然后整理在一起,分本別類(lèi),形成非常系統化完整的一份筆記教程,就比如我學(xué)習Java寫(xiě)的這份30萬(wàn)字的教程式筆記:(后臺回復“手冊”獲?。?/span>
還不懂什么是教程式筆記的就可以參考我這個(gè)來(lái),你就看我這個(gè)筆記,是不是不僅僅是筆記啦,馬上可以稱(chēng)為一本書(shū)了,非常的完整系統!
所以,系統化學(xué)習和教程式筆記是相輔相成的,必須在一起才能發(fā)揮作用!
在你進(jìn)行了系統化學(xué)習和教程式筆記之后,你就可以更好的去利用碎片化時(shí)間了,怎么辦,就是我之前說(shuō)的看文章,而且是看那些你系統化學(xué)習過(guò)的知識點(diǎn),為啥,一句話(huà)說(shuō)明白“溫故而知新,可以為師矣”,咋樣,get到了吧?
好啦,到了這里,本文的分享就結束啦,以上就是我這四年以來(lái)自學(xué)編程所有經(jīng)驗的精華總結了,不知道你讀懂了多少,but,如果你覺(jué)得本文還不錯的話(huà),麻煩點(diǎn)個(gè)贊吧,原創(chuàng )不易,需要鼓勵,在此謝過(guò)!
*博客內容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀(guān)點(diǎn),如有侵權請聯(lián)系工作人員刪除。