開發與維運

自學編程的八大誤區!克服它!

原文鏈接

image.png

說在前面

小夥伴們大家好,又是全新的一天。

關於“自學編程的一些常見誤區”這個話題其實很早之前就在視頻裡聊過了。時間過去了大半年,也還是有很多小夥伴會提及各種自學過程中的常見疑惑,所以還是用文字總結一下這幾點想法,和大家共勉。

誤區1:忽略基礎,盲目莽進

基礎知識和基礎路線真的非常重要,就以Java領域舉例,現在的應用框架實在是太多了,五花八門,層出不窮,迭代的速度太快了。但是假如Java SE的基礎不牢、網絡協議和操作系統不熟,基本的設計模式不瞭解,那一味地追求學習新框架反而會讓自己陷入迷茫與困頓。

基礎牢固,應用框架的學習自然就不用懼怕了,很快就能切入核心,掌握原理。而且越時髦的東西淘汰也越快,畢竟迭代太快了。

對於編程開發來說,這裡一直在強調的基礎主要就包括:編程語言本身、數據結構和算法、計算機網絡協議、操作系統知識、數據庫、常見的設計模式等等,無非也就這些了!

誤區2:學到懷疑自己能力,編程真得靠天分?

有時候學習受挫,難免會懷疑自己的能力、懷疑自己的人生與理想,偶爾的心情低落屬實太常見了。

在我個人看來,這東西主要跟你的經歷、眼界,以及知識的豐富度有關。因為初學者很難看到問題背後的一些東西,眼界也沒有那麼開闊。從我個人感受來說,我以前練書時所心心念唸的一些困擾和迷茫,隨著知識學習的增加,所見所聞的豐富,也自然解惑了。

所以某個程度上來說,這東西也急不得,我們只能靠努力、積累、時間去完成,學到一定時候你就會不自覺地發現,原來之前的一些疑惑與困頓都豁然開朗了。

我還是堅信一句話:編程開發目前絕對還沒有到拼天分的地步,不要日常懷疑自己,不要妄自菲薄。

誤區3:孤軍奮戰,封閉學習

脫離交流,往往會讓學習問題越積越多,最終導致失去興趣,從而被勸退,所以我覺得還是應該 “走出去” 學習。

關於這件事,我覺得我們能做的其實有很多,最最簡單的方式那就是敢於總結、敢於分享,敢於把所學所做的東西亮出去和大家一起交流,即使收到的是批評,換一個角度來想,反映的就是自己的缺陷與不足,改進後就是成長。

誤區4:必須學習最好的語言

或者說,擔心學習到的不是最好的語言。

這也是一年多來和小夥伴們交流的過程中,幾乎提及最多的一個問題。語言其實不分好壞,而只有適合的應用場景。想學什麼也結合自己的興趣領域和目標崗位來定。我覺得後者才是應該首先花時間探尋和澄清的東西。

誤區5:代碼總記不住咋整?

代碼真的不是靠記憶的,而是不停的寫、不停的思考,在反覆的練習中熟練掌握的。即使要記,最終熟記的也應該是設計和編碼上的一些模式和套路,而不是具體的代碼。

千萬不要嘗試用記憶力去替代自己的理解力!

誤區6:到處蒐集資料卻從來不看

好像大家都有一個毛病,那就是到處蒐集資源,網盤裡很多東西,但是基本從來不看,也不好檢索。

我覺得收集資料沒有問題,但是牆裂建議在入庫的那一刻做好歸類與標記,方便後續檢索與學習。另外也建議儘快規劃好學習路線和時間節點,把所獲資料和學習路線關聯起來,紮實執行,把資料利用起來才是關鍵!

誤區7:學了就忘,是不是不適合學編程?

學了就忘,是絕大多數人都有的通病。忘得快主要的原因還是因為沒有用上,缺少實踐和練習。

所以為了克服這個問題,我們能做的最起碼有:一是多記錄、多總結、多回顧。對於一個知識或者技能,可以畫成腦圖、或寫成技術博客,這些都是不錯的形式,後續複習也方便了;另外一點則是需求驅動,嘗試尋思用所學的技能去做點小東西,練手非常重要,即使目前沒有好的創意,那也可以多學習研究一些優秀的開源項目,從中找尋想法和靈感。

誤區8:非科班以後工作可以做編程嗎?

一年多來,遇到的另外一個很常見的問題就是:我讀XXX專業,有意願以後從事編程開發,請問可以轉過去,或者找相關的工作嗎?

從個人的經歷和所見來看,不管是自己同學,校招認識的小夥伴,還是工作後遇到的同事,專業背景真的是五花八門,暫且不說像通信、電子、自動化這些專業背景出身的人來搞編程,甚至連學地理科學、機密器械專業的我也見過,所以從某一程度上來說,這也不算什麼。

讀大學的一個重要作用還是培養獨立學習、獨立解決問題的能力,所以編程開發這一塊,自學出來的有很多。

後記

好啦,聊了這麼多,希望和小夥伴們一起共勉吧,加油就完事兒了!

來源 | 五分鐘學算法
作者 | 程序員小吳

Leave a Reply

Your email address will not be published. Required fields are marked *