2016-10-27 藍(lán)藍(lán)設(shè)計(jì)的小編
如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里
當(dāng)人們嘗試學(xué)習(xí) JavaScript , 或者其他編程技術(shù)的時(shí)候,常常會(huì)遇到同樣的挑戰(zhàn):
幸運(yùn)的是,這些挑戰(zhàn)最終都可以被戰(zhàn)勝。在這篇文章里,我將介紹 6 個(gè)思維技巧來幫你更快的學(xué)習(xí) JavaScript ,讓你成為一個(gè)更快樂更多產(chǎn)的程序員。
對(duì)于很多學(xué)習(xí) JavaScript 的人來說,他們問的第一個(gè)問題是選用哪個(gè)框架(現(xiàn)有框架非常多)。但是如果你還不熟悉原生的 JavaScript ,那這就是個(gè)不該問的問題。你會(huì)花費(fèi)你全部的時(shí)間去查詢不同的框架并且不會(huì)取得任何進(jìn)展。
走出這個(gè)讓人猶豫不決的陷阱的一個(gè)方法是要有一個(gè)學(xué)習(xí)的路線圖。比如,要想成為一個(gè)前端開發(fā)人員,你的路線圖大概是這樣的:
把學(xué)習(xí)計(jì)劃進(jìn)一步拆分,你可以只用 HTML 和 CSS 做一個(gè)功能性的網(wǎng)頁。了解其中的具體步驟,你會(huì)很容易知道現(xiàn)在需要關(guān)注的東西,因此不會(huì)浪費(fèi)時(shí)間擔(dān)心將來要學(xué)習(xí)的內(nèi)容。
在學(xué)習(xí) JavaScript 的過程中,快速理解某個(gè)概念可能是最不利于你進(jìn)步的一件事。請(qǐng)?jiān)试S我解釋一下。
當(dāng)你理解一些東西并且覺得它言之有理的時(shí)候,你會(huì)傾向于立即學(xué)習(xí)下面的內(nèi)容。可能你會(huì)理解下面的內(nèi)容并繼續(xù)向下學(xué)習(xí)。但是很快,你會(huì)發(fā)現(xiàn)你已經(jīng)忘記了之前所學(xué)到的一些東西,因此你需要重新復(fù)習(xí)。你很快的瞥一眼之前的概念更新下記憶然后繼續(xù)往后學(xué)習(xí)。但是,這次你又忘記了其他的一些東西。你會(huì)不停的反反復(fù)復(fù)直到你發(fā)現(xiàn)你完全的迷失了方向。你會(huì)感到氣餒,休息一下后,你準(zhǔn)備重新開始,卻發(fā)現(xiàn)已經(jīng)忘記了所有的東西。
幸運(yùn)的是只需要簡單的兩步就可以解決這個(gè)問題:
1. 限制一次學(xué)習(xí)的內(nèi)容總量
2. 認(rèn)真的練習(xí)——寫代碼
當(dāng)你學(xué)習(xí)一些新的概念的時(shí)候,一定要多嘗試,多應(yīng)用,多熟悉,甚至將它與其他的概念相結(jié)合。在你學(xué)習(xí)的示例中寫代碼非常重要,因?yàn)檫@有助于你深刻理解它。同時(shí),限制一次學(xué)習(xí)的內(nèi)容總量有助于你記住這些內(nèi)容,因?yàn)橛涀≥^少的內(nèi)容會(huì)更容易。
這個(gè)過程可能會(huì)比僅僅通讀一遍就學(xué)習(xí)其它內(nèi)容要花費(fèi)更多的時(shí)間,然而實(shí)際上它需要的時(shí)間更少,因?yàn)槟悴恍枰獊砘胤磸?fù)。經(jīng)過多次嘗試,我終于掌握了這種方法。
很多人認(rèn)為練習(xí)是件重復(fù)而又無趣的事情,所以他們常常會(huì)跳過練習(xí)試著走捷徑。如果你試圖在 JavaScript 的練習(xí)上走捷徑,實(shí)際上你需要更長的時(shí)間來學(xué)習(xí)它。但是,怎樣才能讓練習(xí)變得更有趣,讓你愿意去做練習(xí)呢?
嘗試轉(zhuǎn)換一下思路:
如果你學(xué)了一個(gè)新的 JavaScript 的概念卻無法嘗試,你會(huì)有什么樣的感受?對(duì)于我個(gè)人而言,我會(huì)覺得懊惱,特別是在我花費(fèi)了時(shí)間去理解它之后。就像一個(gè)孩子有了一件新的玩具卻不能玩一樣。
當(dāng)你學(xué)一些新的 JavaScript 的知識(shí)時(shí),試著像對(duì)待一個(gè)新玩具、一輛新車、一雙新鞋或者其它你有興趣嘗試的東西一樣。像玩一樣練習(xí),而不是像工作一樣練習(xí)。用新技能做一些很棒的事情。給自己一些驚喜同時(shí)展示給你的朋友。
保持娛樂的心態(tài),你會(huì)學(xué)的更快,記住的時(shí)間更長,而且你會(huì)覺得更有趣。
人們常見的問題之一是沒有時(shí)間去編程。但是這些人卻可以在 Facebook , YouTube , Wikipedia 或者 Reddit 這樣的網(wǎng)站上花費(fèi)數(shù)小時(shí)的時(shí)間。不管你是不是也有這樣的情況,其中都有值得學(xué)習(xí)的地方。
很多時(shí)候我只是想看一小會(huì)兒的 Facebook ,結(jié)果我卻在那兒停留了好幾個(gè)小時(shí)。為什么會(huì)這樣呢?這恰恰是因?yàn)槲也]有打算在那兒停留太長時(shí)間。萬事開頭難,我發(fā)現(xiàn)把目標(biāo)降低會(huì)更容易投入。如果有人問我是否準(zhǔn)備在 Facebook 上花費(fèi)幾個(gè)小時(shí),我會(huì)說不,因?yàn)槲覜]有那些時(shí)間。然而,我更愿意接受快速查看某件事情的想法,我就是這樣被吸引進(jìn)去的。
好消息是你可以用同樣的心理優(yōu)勢(shì)去學(xué)習(xí)編程。不要試圖花幾個(gè)小時(shí)去編程,因?yàn)槟阏也坏竭@樣的時(shí)間。告訴自己只寫三分鐘的代碼,你就不會(huì)再為找時(shí)間而掙扎了。
這句話聽上去有些違背常理,所以我會(huì)用一個(gè)故事來解釋。
我的一個(gè)朋友曾經(jīng)對(duì) JavaScript 的某些特性感到困惑。我讓他和我一起過一遍他知道的內(nèi)容然后解釋一下哪一部分讓人困惑。當(dāng)他檢查代碼片段的時(shí)候,我注意到他有些急躁。
“等等!”我說。“慢一點(diǎn),跟我解釋下這里的每一步。”
我的朋友接著向我解釋了這段代碼的作用。
我又一次打斷他,“你還是太急了。再試一次,但是這一次,我需要你逐字逐句的跟我解釋每行代碼并且告訴我代碼的作用。”
這一次,我的朋友能夠更好的解釋代碼中發(fā)生的事情。其中的關(guān)鍵是他有花時(shí)間去逐步檢查每行代碼而不是企圖一下子理解全部。
在這樣的情況下,思考地越慢實(shí)際上能讓你學(xué)地更快。
如果一段代碼太復(fù)雜或者陌生,就先用簡單語言寫出來。這樣,你可以在實(shí)際編寫代碼前弄清楚你想要代碼做什么。這種方法有兩個(gè)好處:
1.代碼寫起來會(huì)更容易更快因?yàn)槟悴恍枰偸峭O聛砣ニ伎妓撛鯓舆\(yùn)行。
2.可以提前捕獲 bug 因?yàn)槟愫芮宄a的作用。
我們已經(jīng)了解了快速學(xué)習(xí) JavaScript 的幾個(gè)方法,你也可以運(yùn)用這些技巧去學(xué)習(xí)其他的技能。下面概括一下我們講的內(nèi)容:
你是怎樣學(xué)習(xí)的呢?你有沒有其他的一些秘訣或者技巧是我沒有提到的呢?或者你覺得這些都是瞎扯,而進(jìn)步的唯一方法是一天投入12個(gè)小時(shí)。無論如何,我期待你們的評(píng)論。
藍(lán)藍(lán)設(shè)計(jì)( 91whvog3.cn )是一家專注而深入的界面設(shè)計(jì)公司,為期望卓越的國內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)
藍(lán)藍(lán)設(shè)計(jì)的小編 http://91whvog3.cn