在瀏覽我的blog的,除了專業(yè)的程序員,也有部分是在校大學(xué)生,還有兩位同學(xué)通過(guò)QQ問(wèn)我怎么
學(xué)習(xí)編程技術(shù),我為這些同學(xué)的好學(xué)而感動(dòng);又因?yàn)樽约涸?jīng)做過(guò)兩年計(jì)算機(jī)大專老師,可能天生
喜歡教育人,興趣一來(lái)就開(kāi)始寫(xiě)這篇blog,其實(shí)自己認(rèn)識(shí)也不夠。
現(xiàn)在的大學(xué)生面臨的環(huán)境,用英國(guó)著名的小說(shuō)家狄更斯的名言來(lái)形容:
“這是最好的時(shí)代,這是最壞的時(shí)代。”
好時(shí)代在于,現(xiàn)在大學(xué)里資訊特別發(fā)達(dá),電腦、網(wǎng)絡(luò)、書(shū)籍,他們很容易得到,現(xiàn)在網(wǎng)絡(luò)上的
教程、blog、技術(shù)新聞等等多得是,各種開(kāi)發(fā)工具、開(kāi)發(fā)平臺(tái)都可以免費(fèi)獲得,這不是最好的時(shí)代嗎?!
想想我們九十年代讀書(shū)時(shí),操作系統(tǒng)是win95/win98,學(xué)習(xí)的語(yǔ)言就是Fortron(都不知道怎么拼寫(xiě)了)
和c語(yǔ)言,反正我從來(lái)沒(méi)有上機(jī)實(shí)習(xí),去機(jī)房就是玩電腦版的超級(jí)瑪麗,四年下來(lái)什么都不會(huì)。
壞時(shí)代在于,東西太多了,都不知道學(xué)什么,很多快餐等著他們,很容易就去學(xué)習(xí)那種21天能精通的
東西。大學(xué)老師要么厲害的自己去開(kāi)公司賺外快,要么根本不懂軟件開(kāi)發(fā)在那里誤人子弟。而現(xiàn)在
的網(wǎng)絡(luò)游戲卻一款款引誘著他們,把身體都搞跨了。所以他們現(xiàn)在比我們那時(shí)更迷惘。
那么在校大學(xué)生到底怎么學(xué)習(xí)才好?其實(shí)沒(méi)有標(biāo)準(zhǔn)答案,我只能自己從我現(xiàn)在的觀點(diǎn)來(lái)談我的看法。
總的看法還是要學(xué)好基礎(chǔ)課程,雖然是老生常談,但真正理解的人不多。
具體到課程,數(shù)據(jù)結(jié)構(gòu)和算法,操作系統(tǒng),匯編語(yǔ)言,計(jì)算機(jī)組成原理,編譯原理,數(shù)據(jù)庫(kù)系統(tǒng)原理。
這些基礎(chǔ)知識(shí),我現(xiàn)在還時(shí)不時(shí)地學(xué)習(xí),就是因?yàn)楫?dāng)年沒(méi)有學(xué),或者沒(méi)有學(xué)習(xí)好。這些基礎(chǔ)的東西學(xué)得好
不好,就意味著一個(gè)普通技術(shù)人員在技術(shù)上能走多遠(yuǎn),當(dāng)然有開(kāi)創(chuàng)性的天才另當(dāng)別論。
很多人問(wèn)到我應(yīng)該學(xué)c還是c++, 還是java,
或者是c#等等,這個(gè)問(wèn)題我用去年底美國(guó)一位教授的
文章里的觀點(diǎn)回答,他說(shuō)現(xiàn)在美國(guó)大學(xué)基本上全是開(kāi)java課,而把c語(yǔ)言放棄了,這樣是害得學(xué)生學(xué)不到
真正的編程技術(shù),將降低美國(guó)在基礎(chǔ)研究上的能力。很多人不以為然,可能說(shuō)他是老糊涂了,其實(shí)我認(rèn)為
這是老教授的高明啊,美國(guó)是操作系統(tǒng)的發(fā)源地,是各種技術(shù)標(biāo)準(zhǔn)的制造者,是各種平臺(tái)的制造者,它在
計(jì)算機(jī)領(lǐng)域能領(lǐng)導(dǎo)全球,就是在基礎(chǔ)研究啊。
數(shù)學(xué)這個(gè)老學(xué)科,依然是那么重要,還是拿例子來(lái)說(shuō)明吧。北京時(shí)間3月12日消息,據(jù)國(guó)外媒體報(bào)道,
微軟主席比爾·蓋茨(Bill
Gates)將懷揣多年來(lái)的夢(mèng)想重返美國(guó)國(guó)會(huì)——為高熟練的技術(shù)工人簽發(fā)更多簽證;
在學(xué)校中開(kāi)展更多的數(shù)學(xué)、科學(xué)和工程教育;以及加大科技投資等。注意到?jīng)]有,比爾·蓋茨把數(shù)學(xué)單獨(dú)
提出來(lái),數(shù)學(xué)有多重要就不用說(shuō)了。其實(shí)學(xué)數(shù)學(xué)最終目的就是鍛煉自己的抽象思維能力,很多非數(shù)學(xué)專業(yè)
出生的人,也沒(méi)有專門(mén)學(xué)數(shù)學(xué),但他的設(shè)計(jì)和開(kāi)發(fā)非常好,你可以發(fā)現(xiàn)他的抽象思維能力天生就很強(qiáng),碰
到一些數(shù)學(xué)估算,時(shí)間/空間復(fù)雜度的分析,他很快就估算出來(lái)了。
有同學(xué)問(wèn)到學(xué)什么開(kāi)發(fā)工具或平臺(tái)好,工具和平臺(tái)不是很重要。學(xué)c/c++的話,你在vc上或者gcc上都
可以。學(xué)java的話,你用esclipse或jbulider,或者其它開(kāi)發(fā)工具,反正稍微流行一個(gè)就可以編譯你的代碼
了。數(shù)據(jù)庫(kù)也一樣,反正是學(xué)習(xí)好sql語(yǔ)句,因?yàn)槟銈儾豢赡墁F(xiàn)在就學(xué)習(xí)到oracle優(yōu)化這么高級(jí)的東西。
注重學(xué)習(xí)基礎(chǔ)知識(shí),養(yǎng)成看書(shū)的好習(xí)慣。在現(xiàn)在的部門(mén)里,很多年輕人都是不看書(shū)的,滿足于項(xiàng)目
開(kāi)發(fā)得來(lái)的那點(diǎn)有限的知識(shí),有了點(diǎn)錢(qián)就知道搞股票,最后也沒(méi)見(jiàn)他賺錢(qián),一兩年下來(lái),技術(shù)還是沒(méi)有長(zhǎng)足
的進(jìn)展,做管理就那么一個(gè)位子,還遠(yuǎn)遠(yuǎn)輪不到他們呢。
還有,很多大學(xué)生可能希望有項(xiàng)目經(jīng)驗(yàn),這是沒(méi)必要的。大學(xué)四年,本來(lái)時(shí)間相對(duì)就不長(zhǎng),這些理論的
東西都沒(méi)有時(shí)間學(xué)好,你還要求有一個(gè)很好的項(xiàng)目經(jīng)驗(yàn),而把最重要的東西放到那里沒(méi)有接觸,這不是得了
芝麻丟了西瓜嗎。
一些大四的學(xué)生,可能出去面試過(guò),碰到一些小公司,或者是做外包的公司,特別是對(duì)日本外包的,
這些公司就想要你一下子會(huì)他們所用的開(kāi)發(fā)工具,至于你的基礎(chǔ)扎實(shí)不扎實(shí),他根本不希望,因?yàn)樗麄兙褪?br />準(zhǔn)備把你搞成白癡,能看著別人設(shè)計(jì)好的文檔和例子,把代碼寫(xiě)出來(lái)就是了,這個(gè)就是高中畢業(yè)生就能做的,你讀大學(xué)四年干什么,不如高中畢業(yè)就去算了。
總之,在大學(xué)時(shí)代,基礎(chǔ)、基礎(chǔ)、還是基礎(chǔ),走上社會(huì)了就在實(shí)際開(kāi)發(fā)中用好曾經(jīng)學(xué)習(xí)過(guò)的東西。