要看多少教程才能成為編程大神?

作者 | ithuangqing
來源 | 編碼之外(ID:ithuangqing)
今天無意間在B站刷到一個視頻,題目叫做“要看多少教程才能成神?”,其中提到了一個讓我醍醐灌頂?shù)膯栴}:
你是在看教程?還是在學習?
至此,有了今天的這篇文章:“要看多少教程才能成為編程大神?”
我覺得這里面牽涉到很多的東西,仔細思考,對自我成長極其有用!
你是怎么學習編程技術(shù)的?
在此之前,我也分享過這個問題,就是我們在初步學習一門編程技術(shù)的時候都是怎么學習的呢?除去參加培訓班以及學校上課這種形式,最常見的形式莫過于以下兩種:
看書 看視頻
今天不談看書,我們只談看視頻。
這里說的看視頻指的也即是看視頻教程進行編程技術(shù)的學習,我想,每一位程序員應(yīng)該都看過視頻教程吧,就是說這種學習方式每個人都有過,那么你們有沒有思考過,究竟要看多少教程才能成為編程大神呢?
另外,你們看視頻學習的效果怎樣呢?
你,是在看教程,還是在學習?
你看了嗎
但是,看視頻教程這種學習方式極易讓人陷入一個怪圈,那就是慢慢養(yǎng)成了“松鼠病”,說白了,也就是不停的收集資源,但是卻很少看?
現(xiàn)在的網(wǎng)絡(luò)資源真的是太多,各種各樣的學習資料真的非常多,你說你要學習Java還是學習python,隨便給你找個幾套視頻學習教程不是問題,如此一來,很多人就開始了不斷的收集,發(fā)現(xiàn)一套視頻教程,如獲珍寶,改天,又發(fā)現(xiàn)一套,哎呀,剛好是自己需要的,沒想到?jīng)]過幾天,機緣巧合之下又發(fā)現(xiàn)一套視頻教程,心想,要是學會這些,月入過萬不是夢……
真的太多人錯把收藏等于知識了!
這是在自欺欺人,你沒發(fā)現(xiàn)嗎?收藏了那么多,你就會了嗎?知識就能成為你的了嗎?即使你所收集的視頻教程資源質(zhì)量再好,你只要沒學習,那都是無用的,除了占據(jù)你的網(wǎng)盤空間,真的是沒一點用?
只收藏,不看,你永遠得不到你想要的知識。
有多少人現(xiàn)在還收集一套以上的視頻教程?有多少人是把你收集的視頻教程看完的?又有多少人是真正看完過一套視頻教程的呢?
私底下,有不少的朋友找我抱怨說,學習Java,學著學著就迷茫了,不知道該學習什么了,不知道如何進行下去了,覺得自己學了那么久啥也不是,感覺不到自己掌握了什么知識內(nèi)容?
我通常會反問:“如果你是看視頻教程學習的,那有沒有完整的看完一套視頻教程呢?”
通常收到的回答都是“沒有”。
很多人都是這樣,明明自己手握資源卻什么都不肯做,還抱怨這個抱怨那個,真的,這樣誰也救不了你,只是空想,,沒有實際行動,那編程確實不適合你!
看了就等于會了嗎
我早期在看視頻教程學習的時候,經(jīng)常會犯困,就是看著看著,自己就開始打哈欠,開始打盹了,這就很難受了,經(jīng)常性的一坐一天的看視頻教程,但是一天過后覺得很空虛,自我感覺像是啥也沒學一樣……
看視頻教程學習的形式類似娛樂性的學習,比如像看電視,刷短視頻等等,就是說,視頻屬于一種娛樂化,那你看視頻教程其實就是屬于娛樂化學習,這種學習有一個弊端就是不會讓你的大腦產(chǎn)生更多的思考,那么你在看的時候,其實你的大腦沒有跟著一起思考,時間久了,你就容易走神,容易大腦放空,從而導(dǎo)致犯困等等。
這其實就是非常低效的學習了,而大部分人似乎都有這樣的問題。
所以,你捫心自問,看視頻教程學習,即使你看完了,但是你真的學會了嗎?
也就是說,大部分人看視頻學習的方式是不正確的,那么你肯定想知道正確的看視頻姿勢是怎樣的吧,別急,在此之前,我想先問你一個問題:
你有沒有覺得看視頻教程學習其實是比較輕松的?
其實這也就是因為上面所說的那樣,看視頻教程其實是不會讓你的大腦產(chǎn)生更多的思考的,尤其在你不想主動思考的時候,你只需要跟著視頻里所講的一步步走就行了。
但是,往往,我們感到輕松的事情并不會給我們帶來什么實質(zhì)性的幫助,對于學習,只有讓你感覺到費勁了,才會有不錯的效果,或者說才會有效果。
學習必須伴隨著思考,而只有思考你才會有所得。
那怎樣看視頻教程才是有效果的呢?回到我們開頭的那個問題:
你是在看視頻教程,還是在學習?
你需要先回答問題,我不管你的額回答是怎樣的,我希望你能記住的是,我們是在學習,是在學習,重點是“學習”而不是把視頻教程給看完?
看完了沒人會獎勵你什么,你看視頻教程的目的是學到知識!
那你看視頻教程的時候就要明確自己的目的,你是在學習,怎么學?你要有自己的思考,要有自己的理解,要有自己的筆記,要有自己的實踐,簡單嗎?可這就是真理!
舉一個很簡單的例子,看視頻教程中有一件事情看似沒啥,但是做起來卻會讓你感到費勁,那就是把視頻教程中的代碼示例自己敲打一遍!
不信你試試看!
技術(shù)學習三部曲
接下來,請你再思考一個問題:
你能看到的視頻學習教程,別人也能看到,那么,你如何建立自己的優(yōu)勢呢?
難道僅僅是靠天賦?靠智商?
不現(xiàn)實吧!
所以,你得相信,學習技術(shù)有一定的方法套路!
what -- 怎么用
在你學習一個技術(shù)點之前,你首先要搞清楚就是what,也就是說,面對一個新的知識,你得搞清楚,它是什么,有用什么,如何去用,這個基本上是屬于學習知識的第一個層次,了解它,運用它!
拿Java舉一個最簡單例子,保證任何小白也能聽得懂,就比如說在初開始學習Java的時候,我們一定會進行Java環(huán)境變量的安裝,那么你肯定會接觸到JDK,那么這個時候,面對JDK,你就要從what入手了,你需要搞清楚,這個JDK是什么,有什么用,怎么用也就是如何去把它配置到環(huán)境變量中去,當你學會了這些,你基本就掌握了JDK的這個what層次的學習。
how -- 如何實現(xiàn)
很多人在學習的時候其實就僅僅停留在第一個層次,也就是what那一階段了,因為覺得自己已經(jīng)知道是什么了,也會用了,緊接著就該學習下面的了,是的很多人都是這樣操作的,這樣做的弊端是什么呢?
知其然不知其所以然,容易忘 沒有形成優(yōu)勢,你會別人也會
那正確的做法其實就是在經(jīng)歷了what這一層次之后,你需要進入第二個層次,就是how,什么意思呢?說白了,到了這一步,你就需要了解其是如何實現(xiàn)的,就比如上面說的JDK,在what階段,你知道了JDK是什么了,也會配置環(huán)境變量了,也能用起來了,但是這還不夠,你需要從how的層次去思考。
這樣簡單把JDK配置到環(huán)境變量就能用了,就能調(diào)用javac命令去編譯java文件了,這個是**如何實現(xiàn)的呢?它的實現(xiàn)機制又是什么呢?**當你思考到這一步,你就會去學習環(huán)境變量相關(guān),比如path,比如JAVA_HOME,比如JDK中的bin文件,一步步的思考學習,你就會慢慢了解,將JDK配置到環(huán)境變量其實是在系統(tǒng)層級提供一個全局調(diào)用的功能,可以讓你在任何路徑下都能調(diào)用到所需要的的EXE可執(zhí)行文件。
你也許了解到,當你執(zhí)行javac命令的時候。其實系統(tǒng)是先在當前路徑下尋找javac可執(zhí)行文件,如果找不到便會去遍歷path環(huán)境變量中配置的各個文件路徑,直到找到j(luò)avac可執(zhí)行文件,如果找不到,也就出錯了……
所以,how這一步,你要做到知其然知其所以然,至此,你的優(yōu)勢才會慢慢建立起來!
why -- 為什么這樣實現(xiàn)
到了最高層次的why階段,其實說白了,就是你要多問為什么?或者說:
請再多問一個為什么?
如果你能達到how的階段,那你基本上已經(jīng)超越了80%的程序員了,后面這20%就要看這個why了,我們在理解了一些知識的底層邏輯之后,再進一步的思考其實就要回到反問的階段了,比如說,為什么這個要這樣設(shè)計?可以這樣嗎?為什么別的沒有這樣設(shè)計?這里這樣設(shè)計的真正原因是什么?有沒有更好的方法呢?
看到?jīng)],你要多問為什么?
回到上面說的JDK,你在基本弄懂其實現(xiàn)機制之后你就要問了,為什么這里調(diào)用javac就可以編譯java文件,為什么調(diào)用java命令就可以執(zhí)行java程序?然后你就會了解到JVM,這個時候你就要問,為什么要安裝JVM?為什么Java程序可以跨平臺?為什么要在不同平臺安裝不同的JVM?
等等……沒那么復(fù)雜,就是多問自己幾個為什么!
基本上你能到達這一步,就說明你對這個技術(shù)知識點掌握的很透徹了!
費曼學習法
在學習方法這一塊,費曼學習法的熱度很高,其核心我覺得就是四個字:
以教促學
就是說,最有效的學習方式就是把知識給別人講一遍,這么來說,學習效果最好的人群應(yīng)該就是教師了吧。如果你能把某個知識給別人講明白,基本上說明你對這個知識是真的掌握了的。
在實際學習當中,我覺得費曼學習法還是很好用的,在我的學習中,很多地方我都應(yīng)用到了費曼學習法,比如我為了鞏固自己的Java基礎(chǔ),我寫了一份十幾萬字的《JavaSE基礎(chǔ)學習教程》,而且我也同時在B站逐步將其錄制成視頻教程!
思維導(dǎo)圖:

電子書(暫未完成,還有內(nèi)容需要補充):

我覺得我目前就在實實在在的踐行費曼學習法,我建議你也可以試試!
總結(jié)
到了這里其實我就覺得可以回答我們的標題了:
要看多少教程才能成為編程大神?
不知道你的心中是否有了答案?回答之前,我還是希望大家先思考這個問題:
你是在看教程還是在學習?
要知道,你的目標不是說把視頻教程看完就行了,而是要從視頻中學到所需要的的知識,這個才是根本目的,但是很多人看視頻教程是學不到所謂的知識的,對視頻教程的學習上,姿勢是完全錯誤的,也就是說,看視頻教程學習,如何真正的學到知識是有方法的,什么方法:
技術(shù)三部曲 費曼學習法
掌握了這些,看多少教程其實也就無所謂了,至于編程大神是否能成為,就要看你的努力程度了!

往期推薦
歡迎加我微信,一起交流學習
如果能給個贊和在看那就更好了,轉(zhuǎn)發(fā)是最大的支持!
