小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

大學(xué)計算機軟件專業(yè)生應(yīng)該學(xué)什么?

 dazuo0312 2006-09-14

大學(xué)計算機軟件專業(yè)生應(yīng)該學(xué)什么?(點擊:887)

收到一封mail,是一個計算機系大三學(xué)生寫來的,想聽聽我的建議,面臨將要畢業(yè)的關(guān)口,應(yīng)該學(xué)點什么才能對將來有用。隨后又有不少朋友通過mail,im等等方式詢問我對這個問題的看法。

我本來不是計算機專業(yè)出身,也并非大師之類的人物,本來不敢好為人師。不過,既然作了這個行業(yè),也算有點心得,被問到,也就說點心得和建議,對與不對,各位看官指教。蓋個體情況差距極大,本文是個人觀點,也就姑且一聽,有用則用,當(dāng)然,這世上怕也沒有所謂萬全之策的。

1、你是否真的喜歡計算機

我是真的喜歡的。如果讓我選擇發(fā)了大財做什么,我仍然繼續(xù)玩計算機,只不過可以更自由自在的玩喜歡的東西。如果你也喜歡,喜歡學(xué)新的東西,喜歡復(fù)雜而精巧的設(shè)計,喜歡工程之美,那就適合走技術(shù)道路。如果不是這樣,這條路比較辛苦,還請三思。其實產(chǎn)業(yè)里相關(guān)的領(lǐng)域也大有可為,比如說寫技術(shù)相關(guān)的趨勢作者,鮮有優(yōu)秀的。目前除了互聯(lián)網(wǎng)周刊的陳瓊同學(xué),我還沒看到給商業(yè)媒體寫技術(shù)相關(guān)的寫手有幾個寫的好的,甚至往往都有致命的本質(zhì)錯誤。諸如此類的周邊領(lǐng)域很多,都有不錯的機會,不一一列舉。

2、假如1你回答的是喜歡,那么

你需要學(xué)習(xí)很多東西。我認(rèn)為不可缺少的東西包括: 

* 基礎(chǔ)理論

* 算法

* C語言

* C++或java,如果精通C,可以舍棄C++,學(xué)java

* unix

* 正則表達(dá)式

* 任何一種腳本語言(目前推薦python)

依次講解為什么這么說

* 基礎(chǔ)理論和算法

20年來,應(yīng)用層面急速發(fā)展,令人眼花撩亂,而實際上,大幕之后的東西,從1972年C和unix誕生以來就沒有過本質(zhì)的變化。在操作系統(tǒng),數(shù)據(jù)庫理論,編譯原理,信息管理系統(tǒng)理論之類,都是*相對*靜止的。雖然其中有類似于微內(nèi)核還是整體內(nèi)核之類的理論之爭,但是幾乎不影響格局,大可以放心去學(xué)。學(xué)這些東西唯一的問題是理論枯燥,最好是結(jié)合實踐,做一些應(yīng)用,學(xué)一些理論,張弛有度,這樣總能保證好奇心旺盛。

學(xué)這些東西的目的是為了真正的了解計算機。不真正了解一個東西,很難舉一反三,很難作到融匯貫通。其實高校教的這些東西都極有價值,只不過是在缺乏實踐的基礎(chǔ)上填鴨,效果往往變成了應(yīng)付考試。

* C語言

我對C語言的認(rèn)識如下: (1)是對計算機的最小抽象 (2) 是一種操作內(nèi)存的語言。

基于這2個認(rèn)識,C是必須要學(xué)好的。

寫程序,就是讓計算機按照人的思想去干活的過程,C提供了計算機的抽象模型,讓我們控制計算機變的簡單,而程序設(shè)計中,內(nèi)存的使用是最為重要的。(記得匯編里面對寄存器的應(yīng)用多么重要嗎?)。操作內(nèi)存是程序員的基本功,雖然現(xiàn)在自動內(nèi)存管理和垃圾回收技術(shù)已經(jīng)變的日益完善,但學(xué)習(xí)到優(yōu)秀的內(nèi)存使用觀念仍然是程序員的必修課。真正掌握了這種觀念,看任何語言都不困難了。我總認(rèn)為,內(nèi)存就是計算機的七寸命門,懂了這個,也就一通萬事通了。

另外一個理由,就是大部分語言是用C語法做為藍(lán)本的。熟練的C語言基本功會讓你未來的學(xué)習(xí)變的輕松很多。

* C++和JAVA

鑒于面向?qū)ο罄碚撊绱酥匾?,我們必須要學(xué)好一種操作對象的語言。如同C是操作內(nèi)存的語言,C++和JAVA就是操作對象的語言。

C++我曾經(jīng)認(rèn)為是很好的語言,但是過于復(fù)雜,變化多端,再加上模版的語法和傳統(tǒng)的C風(fēng)格差距頗大,已經(jīng)越來越不適合成為一種入門語言。JAVA變的更加值得推薦。

JAVA對于對象的控制能力,遠(yuǎn)遠(yuǎn)高于C++,學(xué)習(xí)成本低,且能達(dá)到效果,是更加值得選擇的。

C++變的原來越尷尬,在開發(fā)底層系統(tǒng)的時候,不如C來得快捷和迅速,在開發(fā)高級應(yīng)用的時候,比不上JAVA的開發(fā)效率。所以說,如果精通C,甚至可以跳過C++不學(xué)。

* UNIX

UNIX或是linux ,這是計算機歷史上最寶貴的財富。寶貴說的不僅僅是其高效的系統(tǒng)和良好的源代碼,更指其哲學(xué)。

一個幾十年來,幾乎沒有修改過技術(shù)架構(gòu)的系統(tǒng),確實令人驚訝,相對于windows系統(tǒng),每3年就會將過去的技術(shù)完全推倒重來,unix世界看起來似乎恒定不變。

UNIX哲學(xué)對于*nix的系統(tǒng)走向影響巨大。以最基本的“簡單就是美”來說,這條原則的重要性往往被忽視,人們喜歡開發(fā)復(fù)雜的,大而全的系統(tǒng),最后結(jié)果往往很悲慘。unix則是提供了一系列的功能單一的小程序,每個程序都有特定的用途,然后利用管道等等方式將這些小程序結(jié)合起來使用。每個程序都簡單,而,越簡單的結(jié)構(gòu)越穩(wěn)定,在這樣的思想上建立起來的系統(tǒng)也會具有極佳的穩(wěn)定性。

理解了UNIX基本哲學(xué),就能理解很多優(yōu)秀的開源產(chǎn)品設(shè)計思路。比如說,mysql為什么提供的功能如此簡陋,還得到了極其廣泛的應(yīng)用?Apache為何穩(wěn)定,php為何速度如此之快等等。這是內(nèi)力,悟到了,用什么東西都無往不利。

* 正則表達(dá)式

這個東西看起來好像天書,但怎么強調(diào)重要都不算過分。

去看看程序員們每天做什么工作,往往會驚訝的發(fā)現(xiàn),其實大部分時間都是在處理字符串。無怪乎一個高手感慨,應(yīng)用軟件最重要的就是兩件事,字符串處理和數(shù)據(jù)庫。

正則表達(dá)式無疑是處理字符串最強大的武器。利用這個,往往可以實現(xiàn)一些看起來不可能完成的任務(wù)。

什么時候開始學(xué)習(xí)正則表達(dá)式合適?當(dāng)你要處理字符串的時候,放棄過去那種,從第幾個字符進(jìn)行substr到多少個字符之類的麻煩的方法,直接嘗試用正則表達(dá)式代替。等熟悉了正則表達(dá)式,你會發(fā)現(xiàn)unix更可愛了,無論是grep還是vi或是apache,正則表達(dá)式無處不在。

* 任何一種腳本語言

腳本語言是最偉大的發(fā)明之一。這種簡單,快捷,入門成本低的語言,雖然效率不算高,但是確實能做很多事。無論是輔助工作,做一些自動化的工作,還是完成大型任務(wù),都有用武之地。比如,用腳本去定時抓取某個頁面,解析內(nèi)容,放在相應(yīng)的位置,這種工作用腳本完成比用編譯語言完成容易的多。

以上幾種,是計算機世界中必不可少的幾個方面,如果都能掌握了,下面做什么大概就不需要我再多說了。能做的事情太多了。這一套東西學(xué)過來,你從一個“專業(yè)畢業(yè)但不真正理解計算機”的人變成了一個能夠和計算機對話的人。這就是所謂的“道” 了。從此之后,在”應(yīng)用”這個層面,應(yīng)該沒有什么東西能難住你了,所謂天下萬物皆為兵器,舉手投足皆可傷人的境界,已經(jīng)差不多了。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多