學(xué)編程的時(shí)候?yàn)槭裁炊加洸蛔。?/h1>
來(lái)源:
奇酷教育 發(fā)表于:
學(xué)編程的時(shí)候?yàn)槭裁炊加洸蛔。?/p>
在程序員的職業(yè)生涯中,我們總是想記住所接觸過(guò)的代碼,可是總是事與愿違。雖然有些人可以過(guò)目不忘,直接在腦海里就能想出問(wèn)題的解決方案,但大多數(shù)普通人卻不能。特別是那些剛開(kāi)始學(xué)習(xí)和探索編程世界的人,比如我自己。
我逐漸了解到,記住所有你接觸過(guò)的代碼是一件不可能的事情!那么問(wèn)題來(lái)了:我們?cè)撛趺唇鉀Q這個(gè)問(wèn)題呢?
一、要明白你能做什么,而不是記住怎么做
其實(shí),代碼可以構(gòu)建的功能有無(wú)數(shù)種可能性!你可以設(shè)想通過(guò)代碼構(gòu)建任何內(nèi)容,只有你想不到的,沒(méi)有構(gòu)建不了的。學(xué)習(xí)一種新語(yǔ)言是一件非常令人激動(dòng)的事情。查看問(wèn)題以及代碼示例,并通過(guò)這些示例學(xué)習(xí)如何利用這種語(yǔ)言以及/新概念完成工作,這都非常重要,但我們無(wú)法記住所有的信息,不要做無(wú)謂的嘗試!你可以在今后需要實(shí)現(xiàn)的時(shí)候,再反過(guò)來(lái)查看,剛開(kāi)始的時(shí)候,你只需要記住這種概念可以實(shí)現(xiàn)什么樣的功能。
在我深入研究React.js時(shí),這種方式給予了我的學(xué)業(yè)很大幫助。實(shí)現(xiàn)的可能性太多了,你有無(wú)數(shù)種方式傳遞props、創(chuàng)建新state、組合組件——實(shí)在太多了!就像一個(gè)大謎團(tuán)!
我了解到React可以實(shí)現(xiàn)非常多的功能,雖然我無(wú)法確切告訴你該如何做,但我知道存在這種可能性,這很重要。
二、在需要時(shí)尋找所需的代碼
就像學(xué)說(shuō)一門(mén)新語(yǔ)言,你知道自己想說(shuō)什么,但你不知道該怎么說(shuō)。編程語(yǔ)言也是如此!
在我剛開(kāi)始學(xué)習(xí)編程時(shí),人們稱(chēng)Google為“終極工具”。那時(shí)我就在想:我使用Google已經(jīng)很多年了……我錯(cuò)過(guò)了什么嗎?
后來(lái)才發(fā)現(xiàn):重要的不是搜索內(nèi)容,而是搜索的方式。無(wú)論你想尋找什么答案,網(wǎng)上都有,就看你怎樣才能找到了!
在用外語(yǔ)與其他人交談,或用一門(mén)新語(yǔ)言編程時(shí),你可以通過(guò)Google找到如何表達(dá)。你不必記住括號(hào)放在何處,或者這里是逗號(hào)還是分號(hào)。應(yīng)該使用圓括號(hào)還是大括號(hào)這種問(wèn)題很容易出錯(cuò),而且也很容易解決!只需快速搜索,兩秒鐘就能找到答案。
但是,我有幾次因?yàn)槲茨軐?xiě)出完美的語(yǔ)法而感到內(nèi)疚。有語(yǔ)法問(wèn)題那就有唄!重要的是你知道自己要做什么,然后只需要記住該如何做即可!
三、從何處下手?
學(xué)習(xí)一門(mén)新的編程語(yǔ)言必然會(huì)令人不知所措,還會(huì)引起混亂。當(dāng)有人說(shuō):“放手去做就好了!”時(shí),我會(huì)覺(jué)得很迷茫,我該從何處下手呢?最終我發(fā)現(xiàn):你永遠(yuǎn)也無(wú)法為需要構(gòu)建的功能做好準(zhǔn)備,你唯一能做的就是走一步看一步,先動(dòng)起來(lái)。
如果說(shuō)每次沒(méi)有遇到任何問(wèn)題、不需要搜索任何技術(shù)、不需要尋求別人的幫助、也不必返工就能成功構(gòu)建一個(gè)項(xiàng)目,我就可以拿到一美元的話(huà),那么我告訴你……到目前為止我一美元也沒(méi)拿到!
犯錯(cuò)是學(xué)習(xí)過(guò)程中的一部分。犯錯(cuò)是學(xué)習(xí)、發(fā)展和提高程序員技術(shù)力的一部分。而學(xué)習(xí)故障排除和調(diào)試代碼則更重要,而不僅僅聽(tīng)別人說(shuō):“我也遇到過(guò)這個(gè)問(wèn)題,你所需要做的就是……”。我強(qiáng)烈鼓勵(lì)你嘗試自己解決問(wèn)題。努力奮斗。不要害怕搞亂或破壞你的代碼。必要的時(shí)候,可以重新構(gòu)建整個(gè)項(xiàng)目。在學(xué)習(xí)新知識(shí)(例如編程)時(shí),一遍遍重復(fù)才能學(xué)到真技術(shù)。一遍又一遍,直到你全部掌握為止。
四、如何實(shí)現(xiàn)呢?
找到你想要構(gòu)建的東西,然后開(kāi)始動(dòng)手!不要猶豫不決。反復(fù)嘗試和失敗。當(dāng)你不確定想要完成的功能時(shí),請(qǐng)花點(diǎn)時(shí)間研究問(wèn)題。分解成塊。弄清楚如何解決每個(gè)塊。然后,再想法把所有塊聚攏到一起。如果你忘記了如何編寫(xiě)for循環(huán),或者忘記了高階函數(shù)會(huì)返回什么,那也無(wú)需擔(dān)心。你可以參閱文檔或指南,然后再繼續(xù)。
有時(shí)這是一個(gè)緩慢的過(guò)程,但非常值得。最終,你會(huì)越來(lái)越有自信,而且有很多想要實(shí)現(xiàn)的新想法。
你會(huì)記住如何實(shí)現(xiàn)嗎?不會(huì)。
但是,你可以參考過(guò)往的項(xiàng)目, 在Google上尋找答案,或者閱讀論壇。答案都是現(xiàn)成的,你需要做的只不過(guò)是找到答案而已。 找到對(duì)的學(xué)習(xí)方法,比你悶頭苦干要值得的多。