我已經從事10年的技術培訓工作,一直教人如何編程。這些人包括學生、已經走上工作崗位的開發人員。在多年的工作生涯中,我注意到一些正確/錯誤學習編程語言的方式,下面我分享一些正確學習語言的5種技巧,雖然它們看起來都很淺顯,但只要你認真執行,絕對會有很大效果和提升。
1.了解語言背后的“哲學”
我在初次學習Java時,覺得它即冗長又存在不必要的復雜。那時,我還不是個經驗的程序員,并且習慣使用C來編碼。Java是一門偉大的語言,但我并不能體會其中的精華——甚至是它的用途,因為我無法理解Java的面向對象原理。
后來,我在德克薩斯大學奧斯汀分校的Browne博士課堂上理解了面向對象方法,并采用它進行計算機科學編程。這對我更好地理解Java的核心思想以及編程方法起了非常大作用。
如今已有成千上萬個編程語言,不同的編程語言解決和優化不同類型的編程問題,并且在計算機系統中處于不同的級別。而你需要做的是了解你所學語言是什么、目標。理解是至關重要的,然后運用它來解決實際問題。
2.親自輸入所有的代碼實例
話說,實踐是檢驗真理的唯一標準。學習一門語言,除了知道其中的原理外,最快的學習方法莫過于實踐,編寫代碼,遠遠大于讀書或看視頻所產生的效果。輸入代碼并且讓它們運行起來是學習一門語言至關重要的一步。即使你對該們語言是完全陌生的,在編寫的時候你也會發現它們的語法結構,漸漸明白其中的含義。
在編寫的過程中,你肯定會犯錯,發現錯誤并糾正它,這個過程也是不可忽視的,錯誤越多,你就會花更多的心思研究,這樣理解就會越加深刻。
3.更進一步
無論是做實驗還是練習,都嘗試著更進一步地了解與學習。經常這樣做將會給你帶來無窮的收獲,驅使你不斷查閱所學語言相關資料。這樣做有兩大優勢:第一,學習該語言的文檔結構并熟悉它;第二,加深概念,幫你解決一些細小問題。
例如,你正在聽一堂學習如何使用HTML5和JavaScript制作音頻的課,那么你應該進一步問問自己:“該如何控制音量呢?”解決這個問題后,你就可以更加深入的掌握代碼。
4.通過許多小例子學習——而不是大項目
在多年的培訓中,我一直把重點放在客戶端的網絡語言上,比如Java以及后來的移動開發。在課堂上,每節課都會有相應的課件,每個課件都會演示些例子,最后把這些例子組合成一個項目。在早期常會犯這樣的錯誤,沒有進行相互隔離。
其實,采用隔離的方式學習各種語言技能是很重要的。比起學習個人技能,集成是個更復雜的過程。在你對一門語言有了堅實的基礎后,集成確實是最好的學習方式,否則很有可能會混淆概念。
5.讓程序運行
一定要讓程序跑起來。即使出現多個bug,也要認真調試,直到能夠正確運行。想要打開一扇門,則必須要關閉一扇門。當你學習一門新的語言技能時,肯定希望以后能有較高的技能水平。有時,你很容易放棄或者跳過某個小缺陷,使該問題一直處于懸而未決的狀態——這樣做很危險。
除此之外,沒有比這個更興奮的事情了——第一次看到自己編寫的應用程序跑起來。
來自:udemy blog