1. 學(xué)好c語言
十年前我上大學(xué)的時(shí)候,c語言教材是潭浩強(qiáng)編寫的教材,現(xiàn)在汕頭大學(xué)里還是用這本。這么多年了,是否過時(shí)?我感覺它依然是大學(xué)生的經(jīng)典C教材,大學(xué)生學(xué)好了它,基本功就扎實(shí)了。數(shù)組、字符串、指針、結(jié)構(gòu)體,這些概念必須理解清楚。對(duì)指針深刻理解了,以后學(xué)數(shù)據(jù)結(jié)構(gòu)課程就容易了。
討論中發(fā)現(xiàn)學(xué)生實(shí)際編程不多,主要時(shí)間花在看書上。要學(xué)好C,學(xué)生一定要去做每章后面的習(xí)題,這些習(xí)題很簡(jiǎn)單,剛好練手。現(xiàn)在學(xué)生條件好,一般都有電腦,裝個(gè)VC++或者VS很容易。不要去學(xué)MFC,用那個(gè)最簡(jiǎn)單的Win32 Console Applian向?qū)晒こ叹托辛恕P∑酵菊f:實(shí)踐是檢驗(yàn)真理的唯一標(biāo)準(zhǔn);學(xué)生一定要?jiǎng)邮謱?shí)踐,看看自己是否理解清楚。
2. 學(xué)好寫作
很多人不理解這個(gè),工作很多年的人也不理解也不贊成這個(gè),但我自己認(rèn)為這個(gè)很重要。大部分人其實(shí)不可能去外企,就是外企工作也未必個(gè)個(gè)全用英文讀寫。所以現(xiàn)實(shí)中,中文其實(shí)很重要,需求分析文檔、系統(tǒng)設(shè)計(jì)文檔、測(cè)試案例、部署文檔、系統(tǒng)操作手冊(cè)、招標(biāo)書等等,絕大部分國(guó)內(nèi)公司里,這些文檔哪一個(gè)不是用中文寫的呢。也可能我個(gè)人特別重視文檔吧。
3. 枯燥的課程: 理解好數(shù)據(jù)結(jié)構(gòu)和操作系統(tǒng)
我大學(xué)時(shí)學(xué)的是c語言版的清華大學(xué)編寫的<<數(shù)據(jù)結(jié)構(gòu)>>,現(xiàn)在汕頭大學(xué)里還是用這本,只是用C++版的了。這個(gè)教材也是經(jīng)典,要學(xué)生全弄懂也是十分難的。現(xiàn)實(shí)中,我個(gè)人的編程經(jīng)歷里,很少自己實(shí)現(xiàn)這些數(shù)據(jù)結(jié)構(gòu)和算法了,基本都是用C++ stl和boost庫(kù)解決問題,java當(dāng)然是自身的list和map等夠用了。但理解清楚這些數(shù)據(jù)結(jié)構(gòu)和算法的原理,是很重要的,就是碰到一個(gè)問題,自己要很清楚去用什么api來解決,不要搞錯(cuò)了,要會(huì)分析時(shí)間復(fù)雜度和空間復(fù)雜度。
至于操作系統(tǒng),道理也是一樣,理解原理是重要的,比如程序、進(jìn)程、線程、heap、stack等等。
4. 處理好過時(shí)的課程
在和學(xué)生交談中,發(fā)現(xiàn)一個(gè)學(xué)生手里一本教材,竟然是《FoxPro》,Visual Foxpro過時(shí)了好幾年了,竟然大學(xué)還在教這個(gè)東西;我02年以前有見過,之后真的沒有看到了。
建議學(xué)生不要把時(shí)間耗在這類過時(shí)的課程上,能60分及格就行;如果是選修,千萬別選了。
5. 假期實(shí)習(xí)
學(xué)校畢竟和企業(yè)氛圍不同,如果假期能去企業(yè)感受一下真實(shí)的軟件開發(fā),對(duì)自己的繼續(xù)學(xué)習(xí)是有很大幫助的。當(dāng)然,去實(shí)習(xí)之前你應(yīng)該把基礎(chǔ)搞好,不要讓企業(yè)一天到晚免費(fèi)培訓(xùn)你,而你卻沒有給企業(yè)任何好處。
6. 參加專業(yè)培訓(xùn)
參加專業(yè)培訓(xùn),特別是專業(yè)開發(fā)人員舉辦的,這好象是我自己王婆賣瓜了,不好多說了。
參考:《more joel on software》