学计算机应该了解什么软件,大学计算机软件业生应该学什么.doc
大學(xué)計(jì)算機(jī)軟件業(yè)生應(yīng)該學(xué)什么
大學(xué)計(jì)算機(jī)軟件專(zhuān)業(yè)生應(yīng)該學(xué)什么
2006-06-29 09:26:41 來(lái)源: HYPERLINK "" \t "_blank" 天極網(wǎng) HYPERLINK "javascript:reply_allReply()" \t "_self" 網(wǎng)友評(píng)論 11 條 HYPERLINK "/" 進(jìn)入論壇
收到一封mail,是一個(gè)計(jì)算機(jī)系大三學(xué)生寫(xiě)來(lái)的,想聽(tīng)聽(tīng)我的建議,面臨將要畢業(yè)的關(guān)口,應(yīng)該學(xué)點(diǎn)什么才能對(duì)將來(lái)有用。隨后又有不少朋友通過(guò)mail,im等等方式詢(xún)問(wèn)我對(duì)這個(gè)問(wèn)題的看法。
我本來(lái)不是計(jì)算機(jī)專(zhuān)業(yè)出身,也并非大師之類(lèi)的人物,本來(lái)不敢好為人師。不過(guò),既然作了這個(gè)行業(yè),也算有點(diǎn)心得,被問(wèn)到,也就說(shuō)點(diǎn)心得和建議,對(duì)與不對(duì),各位看官指教。蓋個(gè)體情況差距極大,本文是個(gè)人觀(guān)點(diǎn),也就姑且一聽(tīng),有用則用,當(dāng)然,這世上怕也沒(méi)有所謂萬(wàn)全之策的。
1、你是否真的喜歡計(jì)算機(jī)
我是真的喜歡的。如果讓我選擇發(fā)了大財(cái)做什么,我仍然繼續(xù)玩計(jì)算機(jī),只不過(guò)可以更自由自在的玩喜歡的東西。如果你也喜歡,喜歡學(xué)新的東西,喜歡復(fù)雜而精巧的設(shè)計(jì),喜歡工程之美,那就適合走技術(shù)道路。如果不是這樣,這條路比較辛苦,還請(qǐng)三思。其實(shí)產(chǎn)業(yè)里相關(guān)的領(lǐng)域也大有可為,比如說(shuō)寫(xiě)技術(shù)相關(guān)的趨勢(shì)作者,鮮有優(yōu)秀的。目前除了互聯(lián)網(wǎng)周刊的陳瓊同學(xué),我還沒(méi)看到給商業(yè)媒體寫(xiě)技術(shù)相關(guān)的寫(xiě)手有幾個(gè)寫(xiě)的好的,甚至往往都有致命的本質(zhì)錯(cuò)誤。諸如此類(lèi)的周邊領(lǐng)域很多,都有不錯(cuò)的機(jī)會(huì),不一一列舉。
2、假如1你回答的是喜歡,那么
你需要學(xué)習(xí)很多東西。我認(rèn)為不可缺少的東西包括:
* 基礎(chǔ)理論
* 算法
* C語(yǔ)言
* C++或java,如果精通C,可以舍棄C++,學(xué)java
* unix
* 正則表達(dá)式
* 任何一種腳本語(yǔ)言(目前推薦python)
依次講解為什么這么說(shuō)
* 基礎(chǔ)理論和算法
20年來(lái),應(yīng)用層面急速發(fā)展,令人眼花撩亂,而實(shí)際上,大幕之后的東西,從1972年C和unix誕生以來(lái)就沒(méi)有過(guò)本質(zhì)的變化。在操作系統(tǒng),數(shù)據(jù)庫(kù)理論,編譯原理,信息管理系統(tǒng)理論之類(lèi),都是*相對(duì)*靜止的。雖然其中有類(lèi)似于微內(nèi)核還是整體內(nèi)核之類(lèi)的理論之爭(zhēng),但是幾乎不影響格局,大可以放心去學(xué)。學(xué)這些東西唯一的問(wèn)題是理論枯燥,最好是結(jié)合實(shí)踐,做一些應(yīng)用,學(xué)一些理論,張弛有度,這樣總能保證好奇心旺盛。
學(xué)這些東西的目的是為了真正的了解計(jì)算機(jī)。不真正了解一個(gè)東西,很難舉一反三,很難作到融匯貫通。其實(shí)高校教的這些東西都極有價(jià)值,只不過(guò)是在缺乏實(shí)踐的基礎(chǔ)上填鴨,效果往往變成了應(yīng)付考試。
* C語(yǔ)言
我對(duì)C語(yǔ)言的認(rèn)識(shí)如下: (1)是對(duì)計(jì)算機(jī)的最小抽象 (2) 是一種操作內(nèi)存的語(yǔ)言。
基于這2個(gè)認(rèn)識(shí),C是必須要學(xué)好的。
寫(xiě)程序,就是讓計(jì)算機(jī)按照人的思想去干活的過(guò)程,C提供了計(jì)算機(jī)的抽象模型,讓我們控制計(jì)算機(jī)變的簡(jiǎn)單,而程序設(shè)計(jì)中,內(nèi)存的使用是最為重要的。(記得匯編里面對(duì)寄存器的應(yīng)用多么重要嗎?)。操作內(nèi)存是程序員的基本功,雖然現(xiàn)在自動(dòng)內(nèi)存管理和垃圾回收技術(shù)已經(jīng)變的日益完善,但學(xué)習(xí)到優(yōu)秀的內(nèi)存使用觀(guān)念仍然是程序員的必修課。真正掌握了這種觀(guān)念,看任何語(yǔ)言都不困難了。我總認(rèn)為,內(nèi)存就是計(jì)算機(jī)的七寸命門(mén),懂了這個(gè),也就一通萬(wàn)事通了。
另外一個(gè)理由,就是大部分語(yǔ)言是用C語(yǔ)法做為藍(lán)本的。熟練的C語(yǔ)言基本功會(huì)讓你未來(lái)的學(xué)習(xí)變的輕松很多。
* C++和JAVA
鑒于面向?qū)ο罄碚撊绱酥匾?#xff0c;我們必須要學(xué)好一種操作對(duì)象的語(yǔ)言。如同C是操作內(nèi)存的語(yǔ)言,C++和JAVA就是操作對(duì)象的語(yǔ)言。
C++我曾經(jīng)認(rèn)為是很好的語(yǔ)言,但是過(guò)于復(fù)雜,變化多端,再加上模版的語(yǔ)法和傳統(tǒng)的C風(fēng)格差距頗大,已經(jīng)越來(lái)越不適合成為一種入門(mén)語(yǔ)言。JAVA變的更加值得推薦。
JAVA對(duì)于對(duì)象的控制能力,遠(yuǎn)遠(yuǎn)高于C++,學(xué)習(xí)成本低,且能達(dá)到效果,是更加值得選擇的。
C++變的原來(lái)越尷尬,在開(kāi)發(fā)底層系統(tǒng)的時(shí)候,不如C來(lái)得快捷和迅速,在開(kāi)發(fā)高級(jí)應(yīng)用的時(shí)候,比不上JAVA的開(kāi)發(fā)效率。所以說(shuō),如果精通C,甚至可以跳過(guò)C++不學(xué)。
* UNIX
UNIX或是linux ,這是計(jì)算機(jī)歷史上最寶貴的財(cái)富。寶貴說(shuō)的不僅僅是其高效的系統(tǒng)和良好的源代碼,更指其哲學(xué)。
一個(gè)幾十年來(lái),幾乎沒(méi)有修改過(guò)技術(shù)架構(gòu)的系統(tǒng),確實(shí)令人驚訝,相對(duì)于windows系統(tǒng),每3年就會(huì)將過(guò)去的技術(shù)完全推倒重來(lái),unix世界看起來(lái)似乎恒定不變。
UNIX哲學(xué)對(duì)于*nix的系統(tǒng)走向影響巨大。以最基本的“簡(jiǎn)單就是美”來(lái)說(shuō),這條原則的重要性往往被忽視,人們喜歡開(kāi)發(fā)復(fù)雜的,大而全的系統(tǒng),最后結(jié)果往往很悲慘。unix則是提供了一系列的功能單一的小程序,每個(gè)程序都有特定的用途,然后利用管道等等方式將這些小程序結(jié)合起來(lái)使用。每個(gè)程序都簡(jiǎn)單,而,越簡(jiǎn)單的結(jié)構(gòu)越穩(wěn)定,在這樣的思想上建立起來(lái)的系統(tǒng)也會(huì)具有極佳的穩(wěn)定性。
理解了UNIX基本哲學(xué),就能理解很多優(yōu)秀的開(kāi)源產(chǎn)品設(shè)計(jì)思路。比
總結(jié)
以上是生活随笔為你收集整理的学计算机应该了解什么软件,大学计算机软件业生应该学什么.doc的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: html判断是否有某个元素,jquery
- 下一篇: 从左边列表复制到右边列表html,JQ实