編程平民化
⑴ 如何學習編程語言
個人大學本科學的是軟體工程,學過幾門編程語言(C/C++/PHP/Java/Python),下面結合一下個人的學習經驗來談一下這個問題。
我覺得想要學好一門編程語言,需要經過如下幾個步驟:
基本語法
其實除非這門語言特別怪異,比如LISP,大多數語言的基本語法都是大同小異的。在初次接觸到一門新的編程語言時,我們需要快速的掌握這門語言的基本語法,比如變數聲明、if條件、循環條件、數組、字元串、最常用的函數等。
如何快速掌握基本語法呢?我一般會上網找一些快速入門的教程,這些教程最好伴隨一些簡單的練手例子。
語言的差異(坑)
任何一門語言都有自己與眾不同的地方,很可能這種語言的一些用法與自己的經驗相悖,那麼我們如何快速的掌握這門語言有哪些坑呢?我自己的做法是上網搜這門語言的面試題。面試題一般包括這門語言的常見用法技巧、坑。通過練習面試題,我們能get到語言的坑,而不是在實際的項目中踩坑。
系統的學習
上面兩種學習方法,有一個很明顯的缺點,就是我們沒有對這門語言形成一個知識體系,只是類似於打補丁的方式,學習的東西浮於表面。想要系統的學習這門語言,我們需要買一本關於這門系統講解這門語言的書籍。這樣有2個好處:第一個是進一步拓展你的知識面,第二個是利於你語言知識結構的形成。
當然,如果不想買書的話,我們可以看這么語言的手冊,手冊上也有很多關於這門語言的技巧和注意點。如果英語好的話,最好看英文版的手冊,哈哈。
下面是我覺得比較好的系統學習語言的書籍:
C:C程序設計語言
練兵
光看書是不能學好一門編程語言的。看書學到的知識只是在你的腦子里留下了一個初步的印象,但是沒有深入骨髓,沒有自己的理解。所以為了對知識有自己的深入理解,我們需要做一兩個實際的小項目,這個項目最好是能解決某一類問題的,不能是那種做出來沒有實際意義的項目。
如果可以的話,最好項把目放在github上開源。如果有人用的話那就更好了,大家會看你寫的代碼,甚至會和你進行討論,這個時間段將是你提高最快的時候,保不準你的項目就是下一個Linux呢,哈哈。