寫給即將步入大學,主修計算機專業的青年們的一封信

gudesheng發表於2008-01-03

寫給即將步入大學,主修計算機專業的青年們的一封信

大家好,新入學的學弟學妹們!
    離開了辛苦高中階段學習之後,恭喜您終於走進了大學的殿堂。尤其是學習計算機專業的你們,是祖國未來的IT精英,我們國家的資訊化建設,未來世界的資訊戰的主力軍就是你們了。因此作為一位過來人,我感覺有必要把我這麼多年,走過的,看過的,聽過的告訴大家,希望對大家未來的學習有所幫助。
    其實這兩年隨著高校的擴招和IT人才的日趨飽和,IT人才的就業前景也不容樂觀了。如果你自認為長相或者才藝出眾,並且希望畢業後找到好的工作。我首先建議你去參加什麼超級女生,超級男生之類的比賽,如果走紅了,在演藝圈發展賺的錢要比搞IT多的多。
    如果不是上面所說的這類人,那麼就請繼續往下看。
    首先,我們來看看目前中國的大學環境,大學就是一個社會,因此你必須學會在這個社會裡面與別人競爭。我們先來看看學校裡面有哪些人群。第一類,學生幹部們。如果你不希望以後留校作輔導員,那麼不要參加所謂的學校的學生會之類的組織。那些所謂的學生幹部就是打雜的。除了這些學生幹部之外,此外學校裡面還有幾種人:一是拼命學習指望拿獎學金和保送讀研的。這些人通常成天泡在自修教室裡面或者圖書館裡面。3年級之後,也許會進入導師的實驗室。 二是家裡有錢,整天除了打遊戲就是泡美眉的。如果你想打遊戲,賣裝備賺錢,那你就一門心思投入進去,否則還是不要玩。至於交女朋友,勸你還是不要想,浪費時間,浪費錢,還不會有結果。此外還有就是做生意的,當然這裡包括做推銷買數碼產品的,生活用品的,牛奶水果,反正賣什麼的都有。當然,還有那些參加數學,物理比賽的,考證的,搞創新的就不贅述了。
    不過說到底,我們都是搞IT,我個人推薦大家一條路,那就是1,2年級把專業課搞好,拿點獎學金和爭取保送名額,同時打好搞開發的基礎。3 4年級抽出時間做專案,賺錢。
    計算機這門課非常特殊,基本上國內的基礎課和國外相比相對落後,而且和實踐比較脫節。所以一些專業課大可以酌情考慮是否去修。很多課程考試前一個禮拜突擊一下就可以應付。當然別忘了去列印店或者網上找歷年考試的試題。
    計算機必修課中比較重要的課程有:1 組合語言,這個非常重要,你以後破解軟體會需要  2 C語言,C/C++是語法Java ,PHP等很多優秀語言參照的,因此,掌握C/C++的各種語句結構,熟悉物件導向思想也非常重要。3 資料庫基礎:這門課很重要,如果你想做專案賺錢的話,SQL就是最重要的工具。4 資料結構和演算法,資料結構將會教會你如何把現實世界中的資訊存入到計算機內,而好的演算法,尤其是程式的靈魂所在。5 當然還有其它,如果你感興趣的話。
    為了不和實踐脫節,你最好1 2 年級就開始大量使用程式和熟悉程式架構。感謝Open source,它讓我們免費的獲得很多企業級專案的原始碼,讓我們可以一探究竟。你可以去www.sf.net上,下載你感興趣的程式,無論是桌面的,還是web的,把他們安裝起來,執行,執行,看看他們的頁面是如何佈局,導航,提交資料的。通過看程式碼,積累一些設計方法。如果遇到問題,去Google上面查詢。記住,對初學者來說,大多數你遇到的問題,Google上通常都有解決的方法,就看你能否掌握搜尋的技巧了。
    當然,別忘了申請一個CSDN的Blog,把你看過的東西,學到的東西,遇到的問題,全部記下來。隨著不斷的積累,這將是你人生的一個重要的知識庫。
    你應該每天更新IT業界的最新東西,選擇一個好的新聞聚合器,推薦你使用Google的聚合器,定閱諸如csdn,theserverside,infoq,javalobby,devx.com等各個主流的IT媒體。
    通過這些學習和積累,你應該掌握兩樣東西:1 搞清楚IT到底是個什麼東西?搞清楚開發軟體到底是個什麼東西? 2 掌握學習的本領,學習新知識的本領。以及在此過程中,獨立克服困難的本領。

    大學本科應屆畢業生的工資水平通常也就3000元左右,因為絕大多數公司都認為你不具備開發經驗。當然大學裡面當然有一些程式設計天才們,早早的就能做專案,作外包,不過那也是鳳毛麟角。所以不要和我抬槓。

   當然,我在這裡所說的不是電腦科學,而是計算機應用。如果你願意投身到計算機理論的研究中,那自然非常好,但是國內目前普遍的學術風氣就是浮躁的。要知道,如果你通過實踐具備了開發經驗,畢業後,  你就可以多一條創業的機會,目前國內對軟體的需求還是非常大的,尤其是政府和中小企業,需要大量的定製軟體開發。一個人僱幾個人,一年做個幾十萬的專案還是很容易的。諸如數學之類的基礎學科固然很重要。但是如果你的公司有了錢,你還怕僱不到人給你搞演算法麼?

 今天還是要比較忙,我這裡簡單說說搞開發應該具備的技能把:

1 你最好掌握一門桌面應用開發語言:VB,DELPHI,PB都是你的選擇,這些計算絕對沒有過時,反而他們的開發效率是新的工具,Java,.NET無法相比的。

2 你應該掌握web應用的開發能力:首先你要學會做網站。html,css,xml你必須非常熟悉。最好也自學一些photoshop,flash之類的開發,這樣遇到小的美工設計,可以不求人。

之後你就要掌握開發網站管理系統的能力,也就是現在常用的CMS。這其中,你也會接觸到基本資料庫使用的方法

3 掌握了基本web應用開發能力之後,你可以開始學習企業級應用開發

J2EE是世界上最偉大的企業級開發,你需要學習什麼是設計模式,MVC,ORM,中介軟體,分散式事務,工作流BPM,業務流程BPEL,業務規則,SOA,ESB,SSO,MDA,各種JSR等等。J2EE的學習過程就是一個豐富的縮寫庫。當然這中間你會學習到各種web伺服器,應用伺服器,Portal,LDAP,等各種企業級伺服器的安裝和使用。

4 之後你還應該學習軟體開發流程,包括傳統瀑布模型和流行的敏捷軟體開發,CVS,SVN實現版本控制,Ant,Maven構建自動化編譯,版本釋出。以及工作任務分解,專案團隊交流協作,專案文件的撰寫等等。

5 掌握了企業級應用的開發以後,你要記住現實的開發不需要照搬任何的模式,而應該根據需要靈活應用,做到以無法為有法。

6 大學四年的時間是非常充裕的,這段時間內,你可以多學學其它課程,比如營銷類,管理類的課程,對你今後會很有幫助,“東方名家”系列講座真的非常不錯,建議你一定要去看看。

如果你能掌握上述的所有開發技能,加上你自身的努力,做個十幾個專案,既可以賺到錢,讓你的父母不要辛苦的供錢你讀書,也可以為以後的工作積累資本。畢業後找到8000以上的工作就會很容易。

當然英語的技能,為人處世的技巧也是必要的修養. 此外多參加體育運動,廣交朋友 ,交遊遠足 ,揮灑青春. 擁抱屬於你們自己的大學的生活吧!

    
    (待續)
   
   
    記住,千萬不要浪費分分秒秒的時間。必須每天都充實的過。 

 

   以上言論,均屬在下個人之看法,實在沒有要大家照著做的意思,只是給大家一個參考。自然會有知音人明白我所說的東西. 不過每個的世界觀不同,如果你有什麼不同的看法,歡迎你留言。如果你的留言只是為了說粗口,那請恕我刪除它們。

 

這兩天比較忙,不料這片文章反映這麼大,下面一併回覆各位親愛的朋友們

 

(將C/C++混為一談,似乎有誤導之嫌。)
  學c是為了掌握其語法,學c++是為了掌握物件技術
 
(彙編和反彙編似乎也不能混為一談吧)
  不同彙編的基本語法,又何來返彙編

(你提出的學習方法和實踐方式的實際可行性是個問題。)
這個是當然的,所以我們在不斷實踐

(天啊,彙編你竟然用來破解這麼無聊,感覺你的技術真的沒有什麼,可能就是做的專案多點,經驗比較多點而已,
說真的,大學難得的4年,還是先學好基礎的,專案不是不要做,但要分輕重,要想想什麼時候才應該做)
每個人都可以走不同的路,但是國內絕大多數大學的計算機基礎課教育程度和老師的水平就不想評論了

(看來作者在計算機應用方面搞的還不錯, 但僅僅是計算機應用,不是電腦科學,.離電腦科學還差的很遠.)
我承認,我談的不是電腦科學,但是看看每年那些人山人海的畢業生麼,我覺得,還是讓應用來的多些吧

(大三大四開始做專案.?做什麼專案呢?
嵌入式?mis?還是其它
根本需要不同的技術.
你以為學了學校教的那些彙編,c/c++就能做外面的專案了?)
我那篇文章後面寫了個待續,這兩天專案繁忙,沒時間寫完,你們這些傢伙連文章都不會看,怎麼就評價了呢

(但是在用過hibernate之後,立馬就不用了)
還在搞ORM,那你開發的應用的水平還很低

(“凡是你遇到的問題,Google上一定有解決的方法” )
我文章是寫給初學者的,初學者遇到的什麼問題,網上沒有?

(我覺得要看一個人怎麼學要看偏向哪方面。賺錢,還是搞研究。)
我這篇文章是看到每年那些畢業大軍和他們的工資水平,而寫的,其他人不要抬槓

(資料結構都不用學嗎?)
我那篇文章不是寫了待續麼?

(上大學就是為了賺錢嗎?)
沒錢能上大學麼



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1116793


相關文章