更快學習 JavaScript 的 6 個思維技巧

2015-10-09    分類:程式設計師人生、首頁精華6人評論發表於2015-10-09

本文由碼農網 – 小峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃

我們在學習JavaScript,或其他任何編碼技能的時候,往往是因為這些攔路虎而裹足不前:

  • 有些概念可能會造成混淆,尤其當你是從其他語言轉過來的時候。
  • 找不到時間(有時是動力)學習。
  • 很容易忘記已經理解了的東西。
  • 工具多又在不斷變化,所以不知道從哪裡開始。

幸運的是,這些攔路虎是可以被識別,並消滅的。在這篇文章中,我將介紹六個思維技巧來幫助你更快地學習JavaScript,併成為一個更快樂、更富有成效的程式設計師

1.不要讓未來的決策阻止你現在前進的方向

很多人學習JavaScript,問的第一個問題往往是“我應該使用哪個框架?”。但是,如果你還沒有掌握最最基礎的JavaScript,那這顯然是一個錯誤的問題。你將你所有的時間用來研究不同的框架,於是,你開始停滯不前。

幫助擺脫這種陷阱的方法之一是畫一個你需要學習的路線圖。例如,要想成為一個前端開發者,你的路線圖可能是這樣的:

進一步分解的話,你可以做一個只有HTML和CSS的功能性web頁面。然後像這樣一步步列出每個步驟,那麼對於現在應該專注於做什麼,就一目瞭然了。你也不會浪費時間去擔心應該以後操心的事情。

如果你覺得這種路線圖很有用,那麼可以看看我以前寫的《learning road map for becoming a front-end developer》,裡面介紹得很詳細。(:對於學習JavaScript的路線,你也可以參考學習Javascript的8張思維導圖這篇文章

2.不要讓自信誘騙你忘事

快速瞭解一個概念,也許是學習JavaScript的道路上最影響你進步的事情之一。下面請允許我解釋一下。

當你讀到某些東西,你覺得的確如此的,那麼很可能就會直接跳到下一個內容。然後你覺得接下來這個內容也非常淺顯易懂,於是繼續往下看。但很快,你會發現你已經忘記了前面自認為已經掌握的內容,所以只能回過頭去溫習。你快速地瀏覽了一遍,感覺又明白了,然後繼續前進。但是你又發現自己忘記了別的東西。你一直處在這個迴圈中,直到最終迷失了自己。你不由地氣餒,想著那先休息一下吧,然而當你休息完了再回來的時候,你發現你已經忘記了所有的內容。

解決這個問題,也很簡單,只需要兩步:

  • 限制一次學習的量。
  • 實踐——實際編寫程式碼。

當你去學習一個新概念的時候,一定要試用它,擺弄它,熟悉它,甚至將它和其他概念結合起來。而且實際輸出到示例程式碼中非常重要,因為這能幫助你消化吸收它。此外,限制一次學習的量,有助於記住資料,道理也很簡單,東西越少越好記。

雖然這種學習程式會讓你感覺所需的時間更多,但實際上恰恰相反,因為你不再需要走那麼多的回頭路。我也是經過了很多次慘不忍睹的教訓才明白了這個技巧。

3.用正確的心態去做練習

很多人認為反覆的練習特別無聊,所以他們通常會選擇跳過或嘗試走捷徑。如果你快進JavaScript練習,那麼最終反而需要更多的學習時間。試著讓練習變得令人感興趣,這樣是不是就不會那麼抗拒呢?

試著轉變心態:

如果讓你學習一個新的JavaScript概念,卻不能試試,會怎麼樣?你是什麼感覺?從我個人而言,我會特別懊惱。這就像一個孩子得到一個新的玩具,卻不能玩一樣。

當你學習JavaScript中一些新內容的時候,試著將它當作新玩具,新車,新鞋,或者其他任何你有興趣嘗試的東西。然後不要將練習當作工作,要將練習當作是玩耍。用新技能去嘗試一些很酷的東西。讓你自己都不由的驚歎。然後顯擺給你的朋友看。

用一種遊戲的心態,你會學得更快,記得更久,擁有更多的樂趣。

4.寫程式碼的時間魔法

在學習JavaScript中最常見的問題是,找不到時間寫程式碼。但是,與此同時,卻有大把大把的時間瀏覽各種網站,如Facebook,YouTube,維基百科和Reddit等。

我有好幾次,一開始只是想開啟Facebook,看一小會,然後不知不覺就發現已經看了幾個小時。這是怎麼發生的呢?或許正是因為我並不打算看很長時間。萬事開頭難,一旦開了頭,後面陷進去就變得容易多了。但是如果有人問我,是否願意花時間在Facebook上,我會堅決地說不,因為我本身時間就不夠用。然而,只允許看一會會時間往往更容易接受,然後深陷其中。

好訊息是,你也可以利用同樣的心理來學習寫程式碼。一開始不要想著要編碼幾小時,因為你永遠找不到這麼多的時間。就告訴自己你要去寫3分鐘的程式碼。這樣你永遠也不用愁擠不出時間了。

5.思考得更慢,學得更快

這聽起來貌似有悖常理,下面我會用一個小故事解釋。

我的一個朋友曾經對JavaScript的某個功能感到困惑。於是,我讓他詳細地說一遍哪些是他知道的,然後給他解釋他感到困惑的那部分。不過,當他檢查程式碼片段的時候,我注意到有一段程式碼,他說得非常倉促。

“等一下!”我說, “慢點講,每一步都詳細地說一下。”

我的朋友繼續給我做程式碼發生了什麼的全面總結。

我只好再次叫住他。 “你還是太倉促了。再試一次,但這次,我希望你能從字面上去檢查每一行程式碼,告訴每一行的程式碼都發生了什麼。”

這次,我的朋友終於能夠很好地解釋程式碼中正在發生什麼。問題的關鍵是,他終於可以一步一步地檢查了程式碼片段,而不是囫圇吞棗想要一次性理解所有程式碼。

在類似於這樣的情況下,思考得更慢實際上能讓你學得更快。

6.首先用簡明的語言來寫複雜的程式碼

如果碰到一段複雜的或你不熟悉的程式碼,那麼先用通俗易懂的語言寫出來。這樣一來,你就可以在寫程式碼之前明確地知道你想要程式碼做什麼。這麼做有兩個好處:

  • 程式碼更易寫,因為你不需要總是停下來想,你想要它表現什麼。
  • 在bug發生之前就能捕捉到,因為你對程式碼應該做什麼有一個明確的概念。

結論

我們已經討論了一堆如何更快地學習JavaScript的方法,而且你也可以將這些技巧應用到其他的技能上。下面來回顧一下:

  • 不要擔心以後會做什麼決策,先好好深入學習。
  • 將新技能當作玩具一般快樂地練習。
  • 以小承諾的方式找時間來寫程式碼,就像你一開始安慰自己只逛一小會時間網站。
  • 慢下來,步子邁的越小,學得越快。

對了,你是怎麼學習的?你有什麼好的技巧嗎?或者,你認為我說的全是一派胡言,唯一的學習途徑就是一天12小時地投入進去?無論是什麼,歡迎不吝點評。

譯文連結:http://www.codeceo.com/article/6-ways-learn-javascript-fast.html
英文原文:Six Simple Mind Tricks to Help You Learn JavaScript Faster
翻譯作者:碼農網 – 小峰
轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]

相關文章