首先,學習是要有順序。語言和數學可以在一起學,一方面它能夠鍛煉邏輯思維,另一方面她能把數學運用在語言的學習上;數據結構、算法可一起學;軟件工程可以最后學,如有時間,學學軟件工程,它會教給你怎樣“生產”軟件。
學C語言肯定有用,學完C語言還應繼續學C++ 和C#, 它們是基于C的更新的語言。JAVA也是不錯的,是當代程序員最喜歡的語言,將來應用平臺也比較多,市場大。
在學習數學的時候,應該學學離散數學,比如布爾代數、集合論、數理邏輯,因為這些是計算機理論和工程的基礎。這些知識并不難,但它對我們的工作幫助很大。數學方法,它是指導你學習的一個重要的助手。比如你要實現一個看似很復雜的函數,而且你編寫了一大堆代碼,什么結構和類型都用上了,可是還是實現不了。這時候,你仔細思考,看看有什么數學上學習的特別公式能夠實現這個問題。所以在設計算法時,一定要仔細思考有沒有更好的數學公式或思想與之相關聯,這樣往往會收到意想不到的好效果。
其次,學會了語言也不見得能成為優秀的程序員。要做好的程序員,你還要學習數據結構、算法分析和程序設計方法。程序設計就像蓋房子,數據結構就像磚、瓦,而算法就是設計圖紙。你若想蓋房子首先必須有原料(數據結構),但是這些原料不能自動地蓋起了你想要的房子;你必須按照設計圖紙(算法)上的說明一磚一瓦地去砌。
再次,就是多練習寫程序。畢業時如果還沒有寫到總量高達幾萬行程序肯定是不行的。必須明白的是:好程序員是寫出來的,不是學出來的。再強調一次:好程序員是寫出來的,不是學出來的。要時刻告訴自己:多寫!多寫!多寫!一定要邊學邊練,時刻尋找機會練。
最后,學習編程心態要放低,雖然你可能夢想要打倒微軟帝國,可是你不要以為自己真的就有實力把Bill PK掉,一定要從最簡單的開始做起,不要眼高手低,荒于練習。否則你可能給他打工他都不要哦!例如,學數據結構,要寫很多小程序試各種結構,光讀書不寫沒用。有時間就要編程序解題試試,即使老師不做要求。任何時候,自己想到什么有意思的題目——包括小游戲,就可以花個周末來編編。
總而言之呢,要把編程序熟練到像作家寫文章,想清了便可信手寫下,只需偶爾查查字典。微軟的程序員就是這樣做的。無論是新手還是大蝦,要的就是勤學苦練,只有這樣,你才能熟練運用任何一種編程技術,你才能走上通向程序設計金殿的成功之路。祝你成功!