為什麼程式設計師在學習程式設計的時候什麼都記不住?

CSDN資訊發表於2019-10-12
640?wx_fmt=gif
在程式設計師的職業生涯中,記住所有你接觸過的程式碼是一件不可能的事情!那麼我們該如何解決這一問題?
640?wx_fmt=jpeg
作者 | Dylan Mestyanek
譯者 | 彎月,責編 | 屠敏
出品 | CSDN(ID:CSDNnews)
以下為譯文:
每個人都會在學習程式語言的時候,努力記住所有一切,這也不足為奇。雖然有些人可以過目不忘,直接在腦海裡就能想出問題的解決方案,但普通人卻不能。特別是那些剛開始學習和探索程式設計世界的人,比如我自己。
我逐漸瞭解到,記住所有你接觸過的程式碼是一件不可能的事情!
那麼問題來了:我們該怎麼解決這個問題呢?

640?wx_fmt=png
要明白你能做什麼,而不是記住怎麼做

其實,程式碼可以構建的功能有無數種可能性!你可以設想通過程式碼構建任何內容,只有你想不到的,沒有構建不了的。學習一種新語言是一件非常令人激動的事情。檢視問題以及程式碼示例,並通過這些示例學習如何利用這種語言以及/新概念完成工作,這都非常重要,但我們無法記住所有的資訊,不要做無謂的嘗試!你可以在今後需要實現的時候,再反過來檢視,剛開始的時候,你只需要記住這種概念可以實現什麼樣的功能。
在我深入研究React.js時,這種方式給予了我的學業很大幫助。實現的可能性太多了,你有無數種方式傳遞props、建立新state、組合元件——實在太多了!就像一個大謎團!
我瞭解到React可以實現非常多的功能,雖然我無法確切告訴你該如何做,但我知道存在這種可能性,這很重要。

640?wx_fmt=png
在需要時尋找所需的程式碼

就像學說一門新語言,你知道自己想說什麼,但你不知道該怎麼說。程式語言也是如此!
在我剛開始學習程式設計時,人們稱Google為“終極工具”。那時我就在想:我使用Google已經很多年了……我錯過了什麼嗎?
後來才發現:重要的不是搜尋內容,而是搜尋的方式。無論你想尋找什麼答案,網上都有,就看你怎樣才能找到了!
在用外語與其他人交談,或用一門新語言程式設計時,你可以通過Google找到如何表達。你不必記住括號放在何處,或者這裡是逗號還是分號。應該使用圓括號還是大括號這種問題很容易出錯,而且也很容易解決!只需快速搜尋,兩秒鐘就能找到答案。
但是,我有幾次因為未能寫出完美的語法而感到內疚。有語法問題那就有唄!重要的是你知道自己要做什麼,然後只需要記住該如何做即可!

640?wx_fmt=png
從何處下手?

學習一門新的程式語言必然會令人不知所措,還會引起混亂。當有人說:“放手去做就好了!”時,我會覺得很迷茫,我該從何處下手呢?最終我發現:你永遠也無法為需要構建的功能做好準備,你唯一能做的就是走一步看一步,先動起來。
如果說每次沒有遇到任何問題、不需要搜尋任何技術、不需要尋求別人的幫助、也不必返工就能成功構建一個專案,我就可以拿到一美元的話,那麼我告訴你……到目前為止我一美元也沒拿到!
犯錯是學習過程中的一部分。犯錯是學習、發展和提高程式設計師技術力的一部分。而學習故障排除和除錯程式碼則更重要,而不僅僅聽別人說:“我也遇到過這個問題,你所需要做的就是……”。
我強烈鼓勵你嘗試自己解決問題。努力奮鬥。不要害怕搞亂或破壞你的程式碼。必要的時候,可以重新構建整個專案。在學習新知識(例如程式設計)時,一遍遍重複才能學到真技術。一遍又一遍,直到你全部掌握為止。

640?wx_fmt=png
如何實現呢?

找到你想要構建的東西,然後開始動手!不要猶豫不決。反覆嘗試和失敗。當你不確定想要完成的功能時,請花點時間研究問題。分解成塊。弄清楚如何解決每個塊。然後,再想法把所有塊聚攏到一起。如果你忘記了如何編寫for迴圈,或者忘記了高階函式會返回什麼,那也無需擔心。你可以參閱文件或指南,然後再繼續。
有時這是一個緩慢的過程,但非常值得。最終,你會越來越有自信,而且有很多想要實現的新想法。
你會記住如何實現嗎?不會。
但是,你可以參考過往的專案, 在Google上尋找答案,或者閱讀論壇。答案都是現成的,你需要做的只不過是找到答案而已。 
原文:https://dev.to/dylanmesty/why-you-can-t-and-shouldn-t-remember-everything-when-learning-to-code-3h53
【END】

640?wx_fmt=jpeg

 熱 文 推 薦 


640?wx_fmt=gif點選閱讀原文,輸入關鍵詞,即可搜尋您想要的 CSDN 文章。

640?wx_fmt=png
你點的每個“在看”,我都認真當成了喜歡

相關文章