六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦 > 學(xué)習(xí)方法 > 高中學(xué)習(xí)方法 > 高考輔導(dǎo)資料 > 計(jì)算機(jī)專(zhuān)業(yè)的學(xué)習(xí)指導(dǎo)

計(jì)算機(jī)專(zhuān)業(yè)的學(xué)習(xí)指導(dǎo)

時(shí)間: 舒雯911 分享

計(jì)算機(jī)專(zhuān)業(yè)的學(xué)習(xí)指導(dǎo)

  報(bào)考專(zhuān)業(yè)的時(shí)候,很多同學(xué)沖著計(jì)算機(jī)專(zhuān)業(yè)的好就業(yè)紛紛報(bào)名,但真正進(jìn)入專(zhuān)業(yè)的學(xué)習(xí)卻一頭霧水摸不著頭緒。以下是學(xué)習(xí)啦小編為大家整理的有關(guān)計(jì)算機(jī)專(zhuān)業(yè)的學(xué)習(xí)指導(dǎo),歡迎大家閱讀。

  計(jì)算機(jī)專(zhuān)業(yè)學(xué)習(xí)淺談

  一、廣泛了解,從科普書(shū)籍開(kāi)始

  選擇計(jì)算機(jī)專(zhuān)業(yè)的同學(xué),也許是因?yàn)樵扔幸欢ǖ幕A(chǔ),也許是因?yàn)橐粫r(shí)的激情,但更多的人,可能對(duì)自己的選擇沒(méi)有深刻的認(rèn)識(shí),或多或少對(duì)計(jì)算機(jī)專(zhuān)業(yè)有一些神秘的感覺(jué)。自己究竟是否喜歡這個(gè)學(xué)科?才華能夠在哪個(gè)分支領(lǐng)域有所施展?抑或是真的不適合這個(gè)專(zhuān)業(yè)?諸多疑問(wèn),解決的方法首先便是了解和認(rèn)識(shí)我們的學(xué)科。濃厚的興趣是學(xué)好任何學(xué)科的源泉;而廣泛的了解則是獲得興趣的途徑。當(dāng)今我們對(duì)于信息的獲取已非難事,其中“閱讀”是一個(gè)簡(jiǎn)潔而有效的方法。

  也許你認(rèn)為閱讀專(zhuān)業(yè)書(shū)籍對(duì)于剛剛步入大學(xué)的自己來(lái)說(shuō)有點(diǎn)困難,也很枯燥,那么不妨先從科普書(shū)籍看起??破諘?shū)籍是了解理論、獲得應(yīng)用知識(shí)最好的途徑。相信不少理工科的同學(xué)被量子物理和相對(duì)論搞得頭昏腦脹過(guò)。究其原因,是我們的現(xiàn)實(shí)生活與抽象的數(shù)學(xué)模型之間存在思想意識(shí)上的鴻溝。然而要是讀讀斯蒂芬·霍金的《時(shí)間簡(jiǎn)史》,你就會(huì)被書(shū)中有趣的故事和例證所吸引,從而對(duì)抽象的理論有了感性的認(rèn)識(shí)——即使仍然沒(méi)有讀懂,你也至少了解了這個(gè)學(xué)科研究的領(lǐng)域和目標(biāo)是什么,也必然有所收獲。所有理工學(xué)科都有這樣的性質(zhì),計(jì)算機(jī)專(zhuān)業(yè)也不例外。

  我們知道,計(jì)算機(jī)理論是建立在數(shù)學(xué)基礎(chǔ)之上的。大學(xué)計(jì)算機(jī)專(zhuān)業(yè)對(duì)數(shù)學(xué)的要求較高,其重要性不必多言。數(shù)學(xué)令不少同學(xué)頭痛,除了其“繁”與“難” 外,很大程度上是因?yàn)樗麄儧](méi)有理解這些抽象理論的實(shí)際應(yīng)用方向。與本科數(shù)學(xué)專(zhuān)業(yè)的課程設(shè)置相比,計(jì)算機(jī)專(zhuān)業(yè)的數(shù)學(xué)課程大都偏重實(shí)用性。比如我們的離散數(shù)學(xué)課程中涉及到的邏輯代數(shù)奠定了計(jì)算機(jī)一切運(yùn)算的基礎(chǔ),形式語(yǔ)言構(gòu)成了計(jì)算機(jī)程序編譯的模型,代數(shù)系統(tǒng)則是當(dāng)前各類(lèi)數(shù)據(jù)庫(kù)系統(tǒng)的理論依據(jù)等等。因此,如果能夠提前地了解到并簡(jiǎn)單地學(xué)習(xí)一下這些數(shù)學(xué)知識(shí)的具體應(yīng)用,對(duì)理解理論是很有益處的。此外,電子學(xué)、信號(hào)與系統(tǒng)、控制理論等也是計(jì)算機(jī)專(zhuān)業(yè)學(xué)生必修的公共課,然而不少同學(xué)往往認(rèn)為它們與計(jì)算機(jī)專(zhuān)業(yè)的關(guān)系不大,從而放松了學(xué)習(xí)。事實(shí)上這些學(xué)科是計(jì)算機(jī)硬件與網(wǎng)絡(luò)通信的基礎(chǔ),學(xué)好這方面知識(shí)的前提是認(rèn)識(shí)它們的現(xiàn)實(shí)應(yīng)用及其與計(jì)算機(jī)的密切聯(lián)系。

  也許你將來(lái)學(xué)習(xí)圖論的時(shí)候,對(duì)“歐拉路”的概念會(huì)很清晰,這是因?yàn)槟阍谛r(shí)候的圖畫(huà)書(shū)上玩過(guò)“一筆畫(huà)”的游戲;然而“二分圖”、“生成樹(shù)”這些概念又是怎么回事呢?你的理解可能就不是那么深刻了——因?yàn)槟阋粫r(shí)難以找到一些生活中的實(shí)例,并從中抽取出特性。在這種情況下,翻閱一些涉及這些知識(shí)的科普書(shū)籍就十分有必要了。我曾讀過(guò)一套《數(shù)學(xué)游戲》(《科學(xué)美國(guó)人》雜志匯編,中文版:科學(xué)技術(shù)文獻(xiàn)出版社),它將圖論、邏輯代數(shù)、自動(dòng)機(jī)理論等領(lǐng)域的抽象的概念具體化為一個(gè)個(gè)有趣的故事,引導(dǎo)讀者了解這些知識(shí)的現(xiàn)實(shí)應(yīng)用,啟發(fā)讀者將抽象思維與感性生活有機(jī)結(jié)合。我還讀過(guò)一本《編碼的奧秘》(《CODE》中文版,機(jī)械工業(yè)出版社),它則將邏輯代數(shù)、數(shù)字電路、匯編語(yǔ)言等知識(shí)以實(shí)物和簡(jiǎn)單電路的形式進(jìn)行類(lèi)比,揭示其中的原理,并引導(dǎo)讀者動(dòng)手實(shí)踐。事實(shí)上這類(lèi)與計(jì)算機(jī)專(zhuān)業(yè)相關(guān)的科普書(shū)籍還有很多,在學(xué)習(xí)課本的間隙閱讀一下,絕對(duì)能起到催化劑的作用。

  談到科普書(shū)籍,相關(guān)的另一個(gè)問(wèn)題便是計(jì)算機(jī)科學(xué)與計(jì)算機(jī)技術(shù)之間的關(guān)系。也許不少同學(xué)選擇計(jì)算機(jī)專(zhuān)業(yè),是源于對(duì)計(jì)算機(jī)令人眼花繚亂的應(yīng)用的認(rèn)識(shí)。所謂計(jì)算機(jī)技術(shù),一般是指包括文字處理、信息管理、多媒體、網(wǎng)站建設(shè)等在內(nèi)的計(jì)算機(jī)應(yīng)用技術(shù);而所謂計(jì)算機(jī)科學(xué),一般指數(shù)據(jù)結(jié)構(gòu)、組成原理、操作系統(tǒng)、編譯原理等計(jì)算機(jī)內(nèi)部實(shí)現(xiàn)機(jī)制。前者是計(jì)算機(jī)在各行各業(yè)提高生產(chǎn)力的體現(xiàn),屬于各類(lèi)職業(yè)教育和專(zhuān)科教育的范疇;而后者是研究是計(jì)算機(jī)本身的理論,是本科計(jì)算機(jī)教學(xué)的重點(diǎn)。市面上大多數(shù)計(jì)算機(jī)書(shū)籍與雜志是計(jì)算機(jī)應(yīng)用技術(shù)方面的,屬“技術(shù)普及型”,從受眾角度來(lái)看與科普書(shū)籍有著類(lèi)似的性質(zhì)。適當(dāng)?shù)厣娅C一些自己感興趣的應(yīng)用技術(shù),對(duì)培養(yǎng)學(xué)習(xí)興趣、增強(qiáng)實(shí)踐能力、了解業(yè)界行情是很有好處的。不過(guò)如果確實(shí)想在計(jì)算機(jī)行業(yè)長(zhǎng)期做下去,仍然應(yīng)當(dāng)將主要精力放在對(duì)計(jì)算機(jī)科學(xué)的學(xué)習(xí)方面。畢竟用科學(xué)的理論指導(dǎo)實(shí)踐是大學(xué)教育的意義所在。

  總之,廣泛了解計(jì)算機(jī)學(xué)科基礎(chǔ)科普知識(shí),在今后學(xué)習(xí)具體理論的時(shí)候才會(huì)少一些盲目,多一些頓悟。

  二、把握全局,學(xué)習(xí)計(jì)算機(jī)導(dǎo)論

  當(dāng)你對(duì)計(jì)算機(jī)學(xué)科涉及的領(lǐng)域有所了解后,就應(yīng)該著手展開(kāi)專(zhuān)業(yè)學(xué)習(xí)了。初讀本專(zhuān)業(yè)的教學(xué)計(jì)劃與課程設(shè)置,你或許會(huì)被諸如離散數(shù)學(xué)、編譯原理、接口技術(shù)等生疏的課程名稱(chēng)弄得一頭霧水。這些課程都是研究什么的?它們各自與我們面前的計(jì)算機(jī)有哪方面的聯(lián)系?要回答這類(lèi)問(wèn)題,首先需要把握全局,從整體上認(rèn)識(shí)計(jì)算機(jī)科學(xué)。

  國(guó)內(nèi)高等院校一般都為大一學(xué)生開(kāi)設(shè)計(jì)算機(jī)基礎(chǔ)課程。這類(lèi)課程的受眾面廣,主要涉及計(jì)算機(jī)基礎(chǔ)應(yīng)用知識(shí)。各種版本的計(jì)算機(jī)基礎(chǔ)教程幾乎都以計(jì)算機(jī)科學(xué)導(dǎo)論作為開(kāi)篇。對(duì)于把計(jì)算機(jī)作為應(yīng)用工具的其他專(zhuān)業(yè)的學(xué)生而言,導(dǎo)論只算是“內(nèi)容概要”,他們往往更注重后面的應(yīng)用型知識(shí);而對(duì)于把計(jì)算機(jī)作為研究對(duì)象的我們,則決不能忽略這類(lèi)指導(dǎo)性的內(nèi)容。專(zhuān)門(mén)地、有意識(shí)地學(xué)好計(jì)算機(jī)科學(xué)導(dǎo)論,能夠使你對(duì)計(jì)算機(jī)科學(xué)有一個(gè)大局觀,清楚地認(rèn)識(shí)到每一個(gè)分支學(xué)科的研究領(lǐng)域與重要意義,從而在今后的具體學(xué)習(xí)中明確方向,加深理解。

  依我個(gè)人的學(xué)習(xí)經(jīng)驗(yàn),建議初學(xué)者閱讀一些國(guó)外優(yōu)秀計(jì)算機(jī)基礎(chǔ)與導(dǎo)論教材。與國(guó)內(nèi)大多數(shù)講解軟硬件具體使用的同類(lèi)教材相比,國(guó)外教材更偏重以應(yīng)用為切入點(diǎn),深入淺出地闡述計(jì)算機(jī)科學(xué)原理。諸如《計(jì)算機(jī)文化(第8版)》(《New Perspectives on Computer Concepts》中文版,機(jī)械工業(yè)出版社)、《計(jì)算機(jī)科學(xué)導(dǎo)論》(《Foundations of Computer Science: From Data Manipulation to Theory of Computation》中文版,機(jī)械工業(yè)出版社):前者適合于各種信息類(lèi)專(zhuān)業(yè)的學(xué)生或計(jì)算機(jī)愛(ài)好者閱讀。該書(shū)圖文并茂,語(yǔ)言生動(dòng),從應(yīng)用角度出發(fā),廣泛涉及計(jì)算機(jī)軟件、硬件、網(wǎng)絡(luò)的基本原理,同時(shí)概述了計(jì)算機(jī)學(xué)科的歷史背景與行業(yè)現(xiàn)狀。隨書(shū)的光盤(pán)中給出了不少影音材料,在學(xué)習(xí)的同時(shí)還可以提高計(jì)算機(jī)專(zhuān)業(yè)英語(yǔ)聽(tīng)說(shuō)能力。后者在風(fēng)格上與前者類(lèi)似,但內(nèi)容更適合計(jì)算機(jī)專(zhuān)業(yè)學(xué)生閱讀,被美國(guó)不少高校定為計(jì)算機(jī)專(zhuān)業(yè)學(xué)生的入門(mén)課。它以實(shí)例作為出發(fā)點(diǎn),系統(tǒng)地講解了計(jì)算機(jī)組成、計(jì)算機(jī)網(wǎng)絡(luò)、操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)、算法設(shè)計(jì)等分支學(xué)科的研究領(lǐng)域、基本原理和應(yīng)用方向,而幾乎不涉及晦澀的數(shù)學(xué)模型與實(shí)現(xiàn)細(xì)節(jié)。閱讀此類(lèi)書(shū)籍,可以在潛移默化中理清初學(xué)者對(duì)于計(jì)算機(jī)科學(xué)學(xué)習(xí)的思路。

  計(jì)算機(jī)科學(xué)是一個(gè)有機(jī)聯(lián)系的整體,每個(gè)分支都或多或少地與其它分支存在依賴(lài)關(guān)系。如果死板地依照教學(xué)計(jì)劃線(xiàn)性地進(jìn)行學(xué)習(xí),往往會(huì)遇到知識(shí)理解上的問(wèn)題。例如算法分析課程與程序設(shè)計(jì)課程分屬理論與實(shí)踐;組成原理課程與體系結(jié)構(gòu)課程是對(duì)計(jì)算機(jī)系統(tǒng)不同層面的剖析。我們不能簡(jiǎn)單地找出它們的先修、后修關(guān)系,這樣難以建立完整的知識(shí)體系。因此在把握大局之后,我們?nèi)杂斜匾?jiǎn)單了解一下每個(gè)分支學(xué)科的基礎(chǔ)知識(shí)。在這方面,推薦大家閱讀《編程卓越之道(第一卷):深入理解計(jì)算機(jī)》(《WRITE GREAT CODE: Volume 1:Understanding the Machine》中文版,電子工業(yè)出版社)這本書(shū)。分開(kāi)來(lái)看每一章節(jié),其內(nèi)容編排結(jié)構(gòu)與國(guó)內(nèi)高校計(jì)算機(jī)課程體制相近,涵蓋了邏輯代數(shù)、數(shù)字電路、機(jī)器指令、體系結(jié)構(gòu)、存儲(chǔ)器管理等方面的基礎(chǔ)知識(shí)和實(shí)現(xiàn)方法,特別是闡明了各個(gè)分支學(xué)科之間的本質(zhì)聯(lián)系。有了這些基礎(chǔ)之后,在遇到更高階的問(wèn)題時(shí),你至少會(huì)明白這個(gè)問(wèn)題應(yīng)該在哪個(gè)分支學(xué)科中尋找答案了。

  當(dāng)你有了一定的計(jì)算機(jī)理論基礎(chǔ),尤其是程序設(shè)計(jì)基礎(chǔ)后,想更加深入地把握計(jì)算機(jī)科學(xué)的脈絡(luò),不妨看看這本書(shū):《深入理解計(jì)算機(jī)系統(tǒng)(修訂版)》 (《Computer Systems A Programmer's Perspective》中文版,中國(guó)電力出版社)。它與《編程卓越之道》系列的共同特點(diǎn)是從程序員的視角觀察計(jì)算機(jī)系統(tǒng)。而這本書(shū)作為國(guó)外數(shù)十所高校的計(jì)算機(jī)系統(tǒng)導(dǎo)論教材,其組織更加嚴(yán)密,風(fēng)格更加嚴(yán)謹(jǐn)。它以“程序在計(jì)算機(jī)中如何執(zhí)行”為主線(xiàn),全面闡述計(jì)算機(jī)系統(tǒng)內(nèi)部實(shí)現(xiàn)的諸多細(xì)節(jié)。當(dāng)你在學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)、組成原理和體系結(jié)構(gòu)等課程和時(shí)候,翻閱一下此書(shū)的相應(yīng)章節(jié),同時(shí)編程實(shí)現(xiàn)其中的例子,一定會(huì)對(duì)課本上單純的文字型理論有更加感性的認(rèn)識(shí)——原來(lái)它們是這樣活生生地存在于我的計(jì)算機(jī)里的!

  正所謂“會(huì)當(dāng)凌絕頂,一覽眾山小”,從計(jì)算機(jī)科學(xué)全局的高度整體把握其分支學(xué)科,在頭腦中率先構(gòu)建計(jì)算機(jī)科學(xué)的整體框架并為其夯實(shí)最基層的結(jié)構(gòu),就能夠?yàn)槟阍谖磥?lái)每一步的學(xué)習(xí)中掃清迷霧,指明方向。

  三、運(yùn)籌帷幄,掌握編程的思想

  程序設(shè)計(jì)與開(kāi)發(fā)是計(jì)算機(jī)學(xué)習(xí)的一個(gè)關(guān)鍵環(huán)節(jié),編程能力是衡量一名計(jì)算機(jī)專(zhuān)業(yè)人員素質(zhì)的重要考核點(diǎn)。這是因?yàn)槌绦蚴沁B接理論與實(shí)踐的紐帶,是計(jì)算機(jī)科學(xué)與計(jì)算機(jī)技術(shù)相交融的領(lǐng)域。作為一名計(jì)算機(jī)專(zhuān)業(yè)學(xué)生,我們一方面有別于其它專(zhuān)業(yè)將計(jì)算機(jī)作為工具的應(yīng)用型人才,不能僅僅利用計(jì)算機(jī),而要為他人利用計(jì)算機(jī)提供平臺(tái);另一方面我們暫時(shí)達(dá)不到計(jì)算機(jī)科學(xué)家的水平,不能做出理論研究成果,但能為理論學(xué)習(xí)鋪墊實(shí)踐基礎(chǔ)。因此,只有具備足夠的程序設(shè)計(jì)與開(kāi)發(fā)能力,才能真正體現(xiàn)我們的智慧,同時(shí)充分發(fā)揮計(jì)算機(jī)的潛力。

  學(xué)習(xí)編程,首先應(yīng)掌握至少一門(mén)程序設(shè)計(jì)語(yǔ)言。C語(yǔ)言作為一種語(yǔ)法清晰、功能強(qiáng)大、應(yīng)用廣泛的高級(jí)語(yǔ)言,長(zhǎng)期以來(lái)被國(guó)內(nèi)大多數(shù)高校的定為程序設(shè)計(jì)必修課。全面理解和掌握C語(yǔ)言的脈絡(luò)的重要意義這里毋庸多言。市面上C語(yǔ)言的教程多如牛毛,但最經(jīng)典的當(dāng)數(shù)C語(yǔ)言的設(shè)計(jì)者Kernighan與 Ritchie 合著的權(quán)威白皮書(shū)——《C程序設(shè)計(jì)語(yǔ)言(第2版)》(《The C Programming Language》中文版,機(jī)械工業(yè)出版社)。書(shū)雖不厚,但絕對(duì)全面而準(zhǔn)確。其語(yǔ)言簡(jiǎn)潔,例證通俗,實(shí)用性強(qiáng)。相比之下國(guó)內(nèi)的一些C語(yǔ)言教材在學(xué)習(xí)曲線(xiàn)可能比前者平滑,但它們往往以考試為導(dǎo)向,過(guò)多地糾纏語(yǔ)法死角,同時(shí)大都未遵從ANSI標(biāo)準(zhǔn)。對(duì)于計(jì)算機(jī)專(zhuān)業(yè)學(xué)生來(lái)說(shuō),前者能夠讓我們看到更加嚴(yán)謹(jǐn)與實(shí)務(wù)的態(tài)度。當(dāng)你的語(yǔ)言功底達(dá)到一定程度后,就需要從一個(gè)更高的視角來(lái)探察語(yǔ)言的本質(zhì),不妨看看這本:《計(jì)算機(jī)程序的構(gòu)造和解釋(第2版)》 (《Structure and Interpretation of Computer Programs》中文版,機(jī)械工業(yè)出版社)。它闡述了編程語(yǔ)言本身的機(jī)制與實(shí)現(xiàn),同時(shí)引入了一門(mén)對(duì)于大多數(shù)中國(guó)學(xué)生來(lái)說(shuō)不甚了解的語(yǔ)言——LISP。 LISP是很多美國(guó)高校計(jì)算機(jī)專(zhuān)業(yè)的入門(mén)語(yǔ)言,也是一種結(jié)構(gòu)上與C、Pascal、Java、Basic等完全不同的非馮·諾依曼語(yǔ)言。研讀SICP,體味LISP,給你耳目一新的感覺(jué)之后更多地可以加深對(duì)編程思想本質(zhì)的理解。

  大學(xué)的各類(lèi)程序設(shè)計(jì)與開(kāi)發(fā)課程旨在培養(yǎng)我們兩方面的能力——算法設(shè)計(jì)能力與應(yīng)用開(kāi)發(fā)能力。前者偏重計(jì)算機(jī)科學(xué),后者偏重計(jì)算機(jī)技術(shù)。算法是用計(jì)算機(jī)思維解決現(xiàn)實(shí)問(wèn)題的理論,具有較強(qiáng)的數(shù)學(xué)性。算法學(xué)的曠世巨著應(yīng)數(shù)Knuth的《計(jì)算機(jī)程序設(shè)計(jì)藝術(shù)》(《The Art of Computer Programming》中文版,清華、機(jī)工、國(guó)防等出版社皆有授權(quán)),不過(guò)要徹底讀懂這個(gè)大部頭需要相當(dāng)?shù)臄?shù)學(xué)理論基礎(chǔ)與編程實(shí)踐經(jīng)驗(yàn)積累。對(duì)于初學(xué)者,建議首先培養(yǎng)使用常規(guī)算法解決小規(guī)模問(wèn)題的能力,并行地提高駕馭語(yǔ)言的水平與抽象問(wèn)題的思維。針對(duì)這個(gè)目的,結(jié)合程序設(shè)計(jì)實(shí)踐一類(lèi)的課程,可以讀讀這幾本書(shū):《編程珠璣(第2版)》(《Programming Pearls》中文版,中國(guó)電力出版社)、《程序設(shè)計(jì)實(shí)踐》(《The Practice of Programming》中文版,機(jī)械工業(yè)出版社)、《代碼閱讀方法與實(shí)踐》(《Code Reading: The Open Source Perspective》中文版,清華大學(xué)出版社)、《C專(zhuān)家編程》(《Expert C Programming》中文版,人民郵電出版社)。它們的側(cè)重點(diǎn)各有不同,但對(duì)于通過(guò)實(shí)踐來(lái)學(xué)習(xí)算法與數(shù)據(jù)結(jié)構(gòu)都是很有益處的。

  應(yīng)用開(kāi)發(fā)方面,實(shí)踐是第一要?jiǎng)?wù),然而高效的實(shí)踐是建立在科學(xué)的程序設(shè)計(jì)方法之上的。以C語(yǔ)言為代表的結(jié)構(gòu)化程序設(shè)計(jì)方法是規(guī)范的程序邏輯的基礎(chǔ),目前主要使用在系統(tǒng)級(jí)開(kāi)發(fā)中,前面所提到的諸多書(shū)籍都或多或少有所涉及。而以Java、C++為代表的面向?qū)ο蟪绦蛟O(shè)計(jì)方法廣泛應(yīng)用于實(shí)用項(xiàng)目開(kāi)發(fā), 這方面的經(jīng)典之作中,推薦閱讀Bruce Eckel的《Java編程思想(第3版)》(《Thinking in Java》中文版,機(jī)械工業(yè)出版社)與《C++編程思想(第2版)》(《Thinking in C++》中文版,機(jī)械工業(yè)出版社)。此外軟件架構(gòu)設(shè)計(jì)、編碼規(guī)范與風(fēng)格、代碼除錯(cuò)與質(zhì)量管理以及軟件工程的各類(lèi)原則在實(shí)際項(xiàng)目開(kāi)發(fā)中都是及其重要的,在具備了一定的編程經(jīng)驗(yàn)、準(zhǔn)備投入一些實(shí)際項(xiàng)目開(kāi)發(fā)的時(shí)候務(wù)必要了解。建議閱讀《代碼大全(第2版)》(《Code Complete》中文版,電子工業(yè)出版社)這本大而全的軟件構(gòu)建綜合性寶典,它在從總體上指導(dǎo)軟件開(kāi)發(fā)的各個(gè)環(huán)節(jié)的同時(shí)也引入了一些細(xì)節(jié)問(wèn)題(諸如 goto的使用)的討論,引導(dǎo)我們對(duì)一些司空見(jiàn)慣的程序設(shè)計(jì)理念不但要知其然,而且要知所以然。

  有一位熱衷于游戲的同學(xué)告訴我,游戲給予他滿(mǎn)足控制欲的空間。但是請(qǐng)放眼看看,游戲的控制范圍不外乎一個(gè)特定進(jìn)程中他人預(yù)先設(shè)定好的一系列數(shù)據(jù),并以有限的圖像與聲音形式體現(xiàn)出來(lái)。然而如果你掌握了編程這一強(qiáng)大的武器,就能夠面對(duì)眼前的計(jì)算機(jī)游刃有余,在硬件條件允許的情況下盡你所能將控制欲升華為創(chuàng)造力,方便自己的同時(shí)造福他人。運(yùn)籌帷幄,掌握編程的思想,無(wú)論走向科學(xué)研究或是應(yīng)用開(kāi)發(fā),這都將為你奠定堅(jiān)實(shí)的基礎(chǔ)!

  四、理性思辨,體味計(jì)算機(jī)哲學(xué)

  Bill Gates對(duì)計(jì)算機(jī)事業(yè)充滿(mǎn)激情——“每天早晨醒來(lái),一想到所從事的工作和所開(kāi)發(fā)的技術(shù)將會(huì)給人類(lèi)生活帶來(lái)的巨大影響和變化,我就會(huì)無(wú)比興奮和激動(dòng)。”自由軟件運(yùn)動(dòng)的精神領(lǐng)袖Richard Stallman幾十年如一日,將打破知識(shí)壟斷、共享人類(lèi)智慧作為己任,帶領(lǐng)著數(shù)以萬(wàn)計(jì)的軟件志愿者推動(dòng)著開(kāi)源世界的發(fā)展。但并非每個(gè)計(jì)算機(jī)業(yè)者都能有Gates那樣豪邁的氣度和Stallman那種堅(jiān)定的信仰,計(jì)算機(jī)及其相關(guān)技術(shù)對(duì)于大多數(shù)業(yè)者來(lái)說(shuō)僅僅是興趣愛(ài)好或者謀生的工具。計(jì)算機(jī)行業(yè)半個(gè)多世紀(jì)以來(lái)形成了其獨(dú)有的文化氛圍,作為一名計(jì)算機(jī)專(zhuān)業(yè)學(xué)生,了解專(zhuān)業(yè)文化,體味專(zhuān)業(yè)哲學(xué),對(duì)于學(xué)習(xí)和從業(yè)都是具有指導(dǎo)意義的。

  首先必須承認(rèn),計(jì)算機(jī)世界中存在著形形色色的意識(shí)理念差異。諸如微軟帝國(guó)與開(kāi)源世界的明爭(zhēng)暗斗,不僅僅是一場(chǎng)商戰(zhàn),更多的是兩種哲學(xué)的搏擊。當(dāng)代大學(xué)生多數(shù)是在微軟Windows光環(huán)照耀下認(rèn)識(shí)計(jì)算機(jī)的。在這種環(huán)境下,多接觸一些開(kāi)源世界的事物,對(duì)于理解計(jì)算機(jī)的本質(zhì)不無(wú)裨益?!豆矂?chuàng)未來(lái):打造自由軟件神話(huà)》(《Free for All: How Linux and the Free Software Movement Undercut the High-Tech Titans》中文版,上??萍冀逃霭嫔?是一本講述開(kāi)源世界發(fā)展史的書(shū),你可以從中了解自由軟件運(yùn)動(dòng)及其領(lǐng)袖人物的傳奇故事,從而對(duì)GNU、 Linux、OpenSource這些概念蘊(yùn)生人性化的理解。清華大學(xué)王垠的《完全用GNU/Linux工作,擯棄Windows——你我共勉》、蘭州大學(xué)黃平的《自由,你忘記了嗎?》等長(zhǎng)篇文章則是國(guó)人對(duì)開(kāi)源運(yùn)動(dòng)的慷慨陳辭。盡管這些文章常常被指為“偏激”,但沒(méi)有調(diào)查就沒(méi)有發(fā)言權(quán),無(wú)論支持還是反對(duì), 客觀的認(rèn)識(shí)是第一位的。

  其次,我們應(yīng)該用平和的心態(tài)對(duì)待知識(shí)與技術(shù),衡準(zhǔn)專(zhuān)業(yè)學(xué)習(xí)在生活中的位置。一些同學(xué)出于種種原因,成為了“先進(jìn)技術(shù)”的追隨者:通曉各類(lèi)流行的編程語(yǔ)言,一有新版本的工具推出立即安裝學(xué)習(xí),一有新的技術(shù)論戰(zhàn)立即關(guān)注其走向。還有一些同學(xué)成為了某些技術(shù)的忠實(shí)信徒:看準(zhǔn)了Java就對(duì).NET的東西置之不理。這些追隨者和信徒們往往為突飛猛進(jìn)的技術(shù)所累,以至于有感于學(xué)習(xí)的空虛。過(guò)分追捧技術(shù)可謂舍本逐末,死扣某一知識(shí)也顯得目光短淺。一方面百變的技術(shù)離不開(kāi)計(jì)算機(jī)科學(xué)的本源,在實(shí)踐過(guò)程中深入理解基礎(chǔ)知識(shí)是關(guān)鍵;另一方面任何技術(shù)都有統(tǒng)領(lǐng)其實(shí)現(xiàn)細(xì)節(jié)的思想精髓,觀其形不如知其神。我們不妨甩開(kāi)冗繁的技術(shù),換個(gè)角度靜下心來(lái)讀幾部計(jì)算機(jī)文化與哲學(xué)作品:

  程序人生方面:《編程之道》(《The Tao of Programming》雙語(yǔ)版,電子工業(yè)出版社)一書(shū)出自一位對(duì)東方道家與禪宗思想有著獨(dú)特理解的美國(guó)軟件工程師之手,全書(shū)由一則則短小而富有哲理故事組成,以類(lèi)似寓言的形式生動(dòng)地反映了程序員群體的生活以及計(jì)算機(jī)文明的演進(jìn)。閑暇時(shí)隨手翻閱,即使不能立刻體會(huì)到每個(gè)故事的真諦,但隨著自身閱歷的增長(zhǎng),相信你會(huì)領(lǐng)悟程序人生的“道法自然”。

  設(shè)計(jì)理念方面:開(kāi)源軟件界的“斗士”級(jí)元老Eric Raymond所著的《Unix編程藝術(shù)》(《The Art of Unix Programming》中文版,電子工業(yè)出版社)一書(shū),以Unix系統(tǒng)的設(shè)計(jì)原則為主線(xiàn),展示了Unix所開(kāi)啟的“KISS”(Keep It Simple, Stupid!)編程文化與思維方式。對(duì)于很多干啃千篇一律的課本、禁錮于Windows開(kāi)發(fā)的計(jì)算機(jī)專(zhuān)業(yè)學(xué)生來(lái)說(shuō),這本書(shū)一定能夠使你眼界大開(kāi)——“結(jié)構(gòu)化”并非真理,“面向?qū)ο?rdquo;也不是王道;而對(duì)于有一定Unix/Linux使用或開(kāi)發(fā)經(jīng)驗(yàn)的同學(xué),這本書(shū)也一定會(huì)使你豁然明朗——原來(lái)一個(gè)程序的設(shè)計(jì)竟可以如此精巧!

  管理哲學(xué)方面:對(duì)于有志于軟件工程,想涉足項(xiàng)目管理的同學(xué),《人月神話(huà)》(《The Mythical Man-Month》中文版,清華大學(xué)出版社)這本書(shū)就有必要讀一讀了。它拿真實(shí)案例說(shuō)事,仿佛一部實(shí)例化的軟件工程課本。如果你在團(tuán)隊(duì)開(kāi)發(fā)的道路上陷入了困境,不如參考一下前輩們是如何處理“人”與“月”二者之矛盾的吧。事實(shí)上不僅是軟件工程,任何事業(yè)的成功,往往技術(shù)不是關(guān)鍵,社會(huì)科學(xué)的因素才是埋 頭技術(shù)的朋友們更應(yīng)當(dāng)關(guān)注的。

  歸根結(jié)底,計(jì)算機(jī)的哲學(xué)依舊是人的哲學(xué)。拋開(kāi)理念之爭(zhēng)議,超越技術(shù)的形式,以人為本地認(rèn)識(shí)我們的行業(yè)與自身的地位,或許會(huì)使將來(lái)的發(fā)展道路走得更舒心一些。

1836541