詳談學習編程語言的策略
有時候,程序員會別無選擇的情況下,毫無準備地涉足另一種新語言;有時候我們會因為新語言中與舊語言的相似處而感到驚喜。根據筆者自己的經驗,學習新語言最糟糕的事情之一就是沾沾自喜。通常這樣會形成一些壞的編程習慣,而常此以往,會影響我們的編程進度以至于事倍功半,也就是比起規范化的學習方法,我們可能要花上更多的時間用于接受新的語言。
HTML2的說明剛剛出爐的時候筆者還在學習HTML。如果你的期望不高,那就很容易對其進行操作。當筆者運行一個在線存儲時,軟件是由Perl編寫的。筆者曾花了半個小時的時間學習Perl句法,但是卻花了近六個月的時間才稍微感覺像是學得比較好。幸運的是,筆者不需要對其系統作出過多操作。這樣的經歷為今后的也定下了基調。筆者相信花半個鐘頭的時間學習句法足夠了,而超過這一時間的學習就只剩下死記硬背了。后來,筆者發現,之所以在前面的Perl學習中取得成功是因為了解了許多該語言的范例——它的長處,缺陷等。在學到這一語言之前已經做了很多的準備工作。
借鑒他人的智慧
筆者所學的***類編程語言是BASIC,COBOL,Scheme以及Pascal。當時的教員深入淺出,一步步地引導著學生了解語言直到所有的學生都能完整地編寫好一個程序。
這種學習方法就值得推廣,尤其是對于開始階段的編程學習而言,因為最初的語言學習可以塑造我們的思維。遺憾的是處于工作環境的程序員被三個問題困擾著:
◆這樣的學習耗費時間,而實際工作中可能不允許出現這么長的學習時間。
◆沒有一個培訓機構或是培訓班來教授編程語言。
◆就算有這樣的培訓,其學費肯定也是非常昂貴的。
如果你擁有一個好的指導老師和一本好的實例分析手冊,那么起步階段的語言學習就不是什么難事了,但是一旦你已經完成正規教育且步入社會,這樣的想法就已經是不現實的了。
接觸前先學習有關知識
另一種筆者曾使用過的策略是在嘗試編寫代碼前先學習一下新語言的相關知識。你可以通過觀看在線教程,閱讀相關書籍,學習源代碼或任何你喜歡的方式來了解,不過不論你選擇哪種方式,學習應該是系統的有框架的。這個方法等于是在你的腦子里播下了創新的種子,而當你開始編寫代碼的時候,思維就會非常活躍。
當然也有筆者沒有嘗試過的方法,但是就筆者建議大家選擇最適合自己的方法,或者按照自己的需要制訂學習計劃。若能將規范化的程序有意識地搭配起來而不是先做研究然后再嘗試編碼,那么大家就能夠創建適合自己的計劃。
【編輯推薦】