計算機專業大學學生的學習規劃

  在大學你的身份是學生,而學生的首要任務就是學習,那麼,計算機專業大學生如何制定學習規劃呢?下面小編給大家帶來計算機專業大學學生學習規劃,希望對你有幫助。

  ***一***

  為了讓每一名計算機與資訊工程學院的同學入校以後,能夠以最快的速度轉變角色,科學規劃大學生活,為四年後那個收穫的6月打好基礎,我們編寫了這篇“如何規劃大學四年”,其中參閱了大量網際網路資料,尤其是李開復給大學生的公開信、IT專業解惑真經等資料,在此對這些作者表示感謝!

  一、大學——人生的關鍵

  大學是人生的關鍵階段。這是因為,從學習上講大學階段是高中階段的延續,但大學階段又和高中階段有很大不同,在此階段你可以追逐自己的理想、興趣。而且,大學階段可能是你第一次離開家庭生活,獨立參與團體和社會生活。這是你第一次不再單純地學習或背誦書本上的理論知識,而是有機會在學習理論的同時親身實踐。這是你第一次不再由父母安排生活和學習中的一切,而是有足夠的自由處置生活和學習中遇到的各類問題,支配所有屬於自己的時間。

  大學是人生的關鍵階段。這是因為,這是你一生中系統性地接受教育的大好機會。這可能是你最後一次能夠全心建立你的知識基礎。這可能是你最後一次可以將大段時間用於學習的人生階段,也可能是最後一次可以擁有較高的可塑性、可以不斷修正自我的成長曆程。這也許是你最後一次能在相對寬容的,可以置身其中學習為人處世之道的理想環境。

  大學是人生的關鍵階段。在這個階段裡,你應當認真把握每一個“第一次”,讓它們成為未來人生道路的基石;在這個階段裡,你也要珍惜每一個“最後一次”,不要讓自己在不遠的將來追悔莫及。在大學四年裡,大家應該努力編織自己的夢想,及早明確自己的方向,努力學習,奠定自己人生的基礎。

  顯而易見,大學是一生中學習能力轉變最大的時候,是把“基礎學習”和“進入社會”這兩個階段銜接起來的重要時期。因此,在大學四年中,要努力培養自己的學習能力,提高自己的學習境界,讓自己成為一個擅長終身學習的人。

  二、認識並認同計算機專業

  進入大學,首先我們要樹立正確的學業觀 。大學生的學業是指在高等教育階段進行以學習為主的一切活動,是廣義的學習階段,它不僅包括科學文化知識的學習,還包括思想、政治、道德、業務、組織管理能力、科研及創新能力等的培養和學習。觀念是行動的先導,要完成好大學學業首先必須樹立正確的學業觀。所謂學業觀就是對所學專業、學業的態度和認識,它在很大程度上影響著同學們的學習、生活乃至人生前景。當代大學生在對待學業問題上存在著種種誤區:或將學業涵義理解過窄,或對學業生活預期過高,或學業角色定位不準,或職業期望值過高,以至學業不精甚至荒廢學業。為此,我們應正確處理如下四種關係:

  一是正確處理學業與專業的關係。珍重自己的學業,就該學得其所,努力培養自己的專業興趣,把自己的愛好和國家的需要及社會發展的要求有機地統一起來,掌握專業知識、專業技能和相關能力,培養自己的專業素質。就計算機相關專業而言,二十一世紀,人類進入到了資訊大爆炸和知識經濟時代。以計算機技術為主的計算技術成為該時代的重要特徵,並對社會發展產生著前所未有的影響。尤其是隨著國家對資訊化建設的高度重視,以及計算機學科對幾乎所有學科的深入的滲透和交叉,使得計算機各專業將變為基礎性的專業。

  二是正確處理學業與職業的關係。在學習期間就應自覺地學好職業知識,培養職業技能,鍛鍊職業能力,以期在將來的就業競爭中立於不敗之地。就計算機各專業的社會需求來說,不論從全球的一些統計資料還是國內的一些統計資料,需求量都是很大的,但更好更優更強的職業知識、職業技能、職業能力是你成功的基礎。

  三是正確處理學業與事業的關係。將自己現在的學業、將來的職業和未來的事業聯絡起來,在學習的過程中,充分認識所學專業在國家建設和社會發展中的意義、作用和發展前景,立志獻身其中,在工作中充分實現自己的人生價值。

  四是正確處理學業與就業的關係。就業與學業存在著密切的關係,就業是學業的導向,學業決定了就業。以就業為學業的導向,有利於大學生專業報考的選擇、學業目標的調整、學習方式的改變、學習外延的拓展以及綜合素質的提高。與此同時,就業也構成了衡量學業成就的重要標誌。想要就好業必須具備強烈的事業心、廣博精深的專業知識、較強的溝通協調能力、良好的心理素質和強健的體魄以及創新精神,這些都應當在完成大學學業過程中養成。

  三、及早規劃你的大學四年

  進入大學後要及早規劃你的大學四年。凡事預則立,不預則廢。為了使自己能充分利用這四年時光,能真正學有所成,能坦然地面對四年後繼續深造或就業競爭,我們要從及早規劃大學四年的學習、生活,及早明確目標,制定航線。

  機遇總是垂青有準備的人。一個人的文化知識素質如何,專業技能掌握的怎麼樣,將決定他在繼續深造或求職擇業時的自由度和考取的學校或取得職業崗位的層次。為此,根據計算機專業發展和用人單位的需要,應重點從以下三個方面抓好學業,做好準備。

  1.構建合理的知識結構

  大學四年,應培養寬厚紮實的基礎知識、廣博精深的專業知識,構建合理的知識結構。這一過程沒有捷徑可走,其基本途徑只能是學習、積累和實踐。也絕非一勞永逸,必須持續不斷地付出艱辛勞動。採取適合自己的學習方法,並且不斷努力、辛苦耕耘,建立和完善自己的知識結構,為繼續深造和就業成才打下良好的基礎。

  2.培養較強的實踐能力

  知識並不能簡單地與能力劃等號,知識與能力是辯證的關係。在一定意義上說,能力比知識更重要。因此,一名優秀的大學畢業生應把構見合理的知識結構、培養科學的思維方式和鍛鍊較強的實踐能力統一起來,尤其要培養較強的專業實踐能力,對計算機各專業來說,程式設計技能就是最重要一項專業實踐能力。具備了較強的程式設計技能才能在考研面試、擇業、從業過程中立於不敗之地。

  3.全面提高綜合素質

  知識、能力、素質是大學生社會化的三大要素。知識是素質形成和提高的基礎,能力是素質的一種外在表現,沒有相應的知識武裝和能力展示,不可能內化和昇華為更高的心理品格。但是知識和能力往往只解決如何做事,高素質的人才應該將做事與做人有機地結合,既把養成健全的人格放在第一位,又注重專門知識、技能和能力的培養,使自身得到全面、和諧的發展。因此,一名優秀的大學畢業生應把構建合理的知識結構、培養科學的思維方式、鍛鍊較強的實踐能力和提高全面的綜合素質統一起來。

  四、大學計算機課程學習路線

  如果你是一個計算機相關專業的一名學生,希望你一定要明白我們計算機專業的學生和非計算機專業學生對計算機知識掌握的深度絕對是不一樣的。我們僅僅會Windows、Office或其它軟體的一些操作是不夠的。計算機專業的優勢就在於,我們掌握許多其他專業並不“深究”的東西,例如,程式語言、演算法,體系結構,作業系統、編譯原理等等。非計算機專業的人可以很容易地做一個晶片,寫一段程式,但他們做不出計算機專業能夠做出來的大型系統。這就需要同學們不僅學懂一些軟體的操作,更需要把計算機專業的一些基礎課程以及專業核心課程學好,並把許多課本上的知識通過實驗、實踐轉化為自己真正掌握的知識。

  ***一***計算機理論的一個核心問題——從數學談起

  同學們大一入學後,每週六學時的高等數學,天天作業不斷。可能有些同學驚呼走錯了門!咱們這到底唸的是什麼專業?不錯,你沒走錯門,這就是電腦科學與技術專業、軟體工程專業、物聯網工程專業、資訊管理與資訊系統專業。計算機專業相關的眾多科學研究中,如資訊檢索,語言文字資訊處理,網路傳輸,圖形影象處理,視訊音訊處理,每個研究方向都與數學有著很大的關係,雖然也許是正統數學家眼裡非主流的數學,但沒有數學是不行的。而且我們都知道,數學是從實際生活當中抽象出來的理論,人們之所以要將實際抽象成理論,目的就在於想用抽象出來的理論去更好的指導實踐,指導利用計算機解決具體問題。

  其實我們計算機專業學數學光學高等數學是不夠的,有條件應該像數學系一樣學一下數學分析***清華計算機系開的好像就是數學分析***,這對培養計算機專業學生良好的分析能力極有幫助。因為在一些軟體企業中,數學系的學生大多作軟體設計與分析工作,而計算機系的學生做程式設計師的居多,原因就在於數學系的學生分析推理能力,從所受訓練的角度上要遠遠在我們之上。

  正如上面所論述的,計算機專業的學生學習高等數學:知其然更要知其所以然。你學習的目的應該是:將抽象的理論再應用於實踐,不但要掌握題目的解題方法,更要掌握解題思想,對於定理的學習:不是簡單的應用,而是掌握證明過程即掌握定理的由來,訓練自己的推理能力。只有這樣才達到了學習這門科學的目的,同時也縮小了我們與數學系的同學之間思維上的差距。

  另外,線性代數,概率論與數理統計這兩門課很重要,可惜大多數院校講授這些課都會少些東西。少了的東西現在看至少有隨機過程。到畢業還沒有聽說過Markov過程,此乃計算機專業學生的影響很大。沒有隨機過程,你怎麼分析網路和分散式系統?怎麼設計隨機化演算法和協議?所以,同學們不僅要學好講到的東西,甚至要自學一些該掌握的知識。

  電腦科學和數學的關係有點奇怪。三四十年以前,電腦科學基本上還是數學的一個分支。而現在,電腦科學擁有廣泛的研究領域和眾多的研?a href='//' target='_blank'>咳嗽保?諍芏嚳矯娣垂?賜貧??Х⒄梗?幽持忠庖逕峽梢運凳嗆⒆映さ帽嚷杪杌垢吡恕5?還茉趺囪??飧齪⒆由砩鮮賈樟髯拍蓋椎?a href='//' target='_blank'>血液。這血液是the mathematical underpinning of computer science***電腦科學的數學基礎***,也就是理論電腦科學。所以推薦大一的同學們一定要學好高等數學,線性代數、概率論與數理統計等數學課,因為數學是開啟計算之門的鑰匙!

  最常和理論電腦科學放在一起的一個詞是什麼?答:離散數學。這兩者的關係是如此密切,以至於它們在不少場合下成為同義詞。,數學是以分析為中心的。數學系的同學要學習三四個學期的數學分析,然後是複變函式,實變函式,泛函數等等。實變和泛函被很多人認為是現代數學的入門。在物理,化學,工程上應用的,也以分析為主。隨著電腦科學的出現,一些以前不太受到重視的數學分支突然重要起來。人們發現,這些分支處理的數學物件與傳統的分析有明顯的區別:分析研究的問題解決方案是連續的,因而微分,積分成為基本的運算;而這些分支研究的物件是離散的,因而很少有機會進行此類的計算。人們從而稱這些分支為“離散數學”。“離散數學”的名字越來越響亮,最後導致以分析為中心的傳統數學分支被相對稱為“連續數學”。離散數學經過幾十年發展,基本上穩定下來。一般認為,離散數學包含以下學科:1***集合論,數理邏輯與元數學。這是整個數學的基礎,也是電腦科學的基礎。2*** 圖論,演算法圖論;組合數學,組合演算法。電腦科學,尤其是理論電腦科學的核心是  演算法,而大量的演算法建立在圖和組合的基礎上。3*** 抽象代數。代數是無所不在的,本來在數學中就非常重要。在電腦科學中,人們驚訝地發現代數竟然有如此之多的應用。每個學校計算機專業都會開一門離散數學,涉及集合論,圖論,和抽象代數,數理邏輯。但同學們學的怎麼樣呢?希望每個同學都重視這門課的學習。

  另外,電腦科學理論的根本,在於演算法。所以同學們也要重視演算法設計與分析等課程或知識的學習。

  ***二***理論與實際的結合——電腦科學研究的範疇

  前面主要是從數學角度來看的。從計算機角度來看,我們學好學科基礎課:數學系列課的同時,更要把專業基礎課,尤其是專業核心課程學好。

  這方面先說說各專業普遍開設的《計算機基礎》。在高等學校開設《計算機基礎》是我國高教司明文規定的各專業必修課程要求。主要內容是使學生初步掌握計算機的發展歷史,學會簡單的使用作業系統,文書處理,表格處理功能和初步的網路應用功能。但是在計算機專業講授該課程時應該側重的是:讓學生較為全面的瞭解計算機學科的發展,清晰的把握計算機學科研究的內容,以及專業課程中每門基礎課和核心課程在整個學科體系中所處的地位及作用。使學生在學科學習初期就對整個學科有一個整體的認識,以做到在今後的學習中清楚要學什麼,怎麼學。然後要側重從整體上講解計算機內部的資料表示方法,計算機的體系結構及計算機執行的基本原理等內容。而相應的Windows基本操作、Office等計算機基本應用技能應當放在第二位,這些技能主要通過大量的實驗和課外實踐並藉助一些競賽平臺讓學生加以掌握。

  一個計算機專業的優秀學生決不該僅僅是一個程式設計高手,但他一定首先是一個程式設計高手。同學們第一門程式設計類的課是程式設計基礎***C語言程式設計***,念計算機的人從某種角度講相當一部分人是靠寫程式吃飯的。在許多學校的計算機專業裡一直有這樣的爭論,關於學生第一程式設計語言該用哪一種。我個人認為,用哪種語言並不重要,關鍵在養成良好的程式設計習慣。因為許多程式設計師都覺得一門語言打好基礎後學一門新語言只要一個星期,甚至根本不用一個星期。前提是先把基礎打好。我們學院新版的人才培養方案,程式設計基礎課程開設一年,意在讓大家學好這門基礎課,同時掌握好指標、結構體、連結串列、自定義資料型別等內容,為後繼的資料結構等課程打好基礎。

  另外,我們新版人才培養方案中,程式設計類的課是一條線。對電腦科學與技術專業的學生來說,第一年是程式設計基礎***C語言***,第3學期開設面向物件程式設計***C++***,第4學期系統平臺程式設計***Windows程式設計***,之後有框架程式設計技術***VC整合環境***,MFC程式設計,高階程式設計,高質量程式設計等。之所以這樣設定是希望,同學們學習的語言不用門門俱到,但一定要把一個語言學精通。另外,我們希望同學們通過四年的學習,編寫和除錯的程式碼量能得到2萬~4萬行。

  硬體的課程是電子技術基礎,組合語言和微機原理,計算機組成原理,然後就是嵌入式和計算機控制方面的一些課。電子技術基礎這門課不僅要講到類比電路,而且要講到數位電路。類比電路這東東,如今不僅計算機系學生搞不定,電子系學生也多半害怕。如果你真想軟硬體通吃,那麼建議你先看看邱關源的“電路原理”,也許此後再看類比電路底氣會足些。數位電路比類比電路要好懂得多。

  組合語言和微機原理是將組合語言和微機原理融合到一起的課。你的數學/理論基礎再好,也佔不到什麼便宜。這兩部分內容之間的次序也好比先有雞還是先有蛋,無論你先學哪部分,都會牽扯另一部分裡的東西。所以,只能靜下來慢慢琢磨。這就是典型的工程課,不需要太多的聰明和頓悟,卻需要水滴石穿的漸悟。

  有了組合語言和微機原理這門課的知識,再學計算機組成原理就有一定基礎了。有些人說不想了解計算機體系結構,也不想製造計算機,所以諸如計算機組成原理,組合語言,介面之類的課覺得沒必要學,這樣合理嗎?顯然不合理,這些東西遲早得掌握,肯定得接觸,而且,這是計算機專業與其他專業學生相比的少有的幾項優勢。做專案的時候,瞭解這些是非常重要的,不可能說,僅僅為了技術而技術,只懂技術的人最多做一個編碼工人,而永遠不可能全面地瞭解整個系統的設計。

  資料結構的重要性就不言而喻了,學完資料結構你會對你的程式設計思想進行一番革命性的洗禮,會對如何建立一個合理高效的演算法有一個清楚的認識。對於演算法的建立我想大家應當注意以下幾點:

  當遇到一個演算法問題時,首先要知道自己以前有沒有處理過這種問題.如果見過,那麼你一般會順利地做出來;如果沒見過,那麼考慮以下問題:

  1. 問題是否是建立在某種已知的熟悉的資料結構***例如,二叉樹***上?如果不是,則要自己設計資料結構。

  2. 問題所要求編寫的演算法屬於以下哪種型別?***建立資料結構,修改資料結構,遍歷,查詢,排序...***

  3. 分析問題所要求編寫的演算法的數學性質.是否具備遞迴特徵?***對於遞迴程式設計,只要設計出合理的引數表以及遞迴結束的條件,則基本上大功告成.***

  4. 繼續分析問題的數學本質.根據你以前的程式設計經驗,設想一種可能是可行的解決辦法,並證明這種解決辦法的正確性.如果題目對演算法有時空方面的要求,證明你的設想滿足其要求.一般的,時間效率和空間效率難以兼得.有時必須通過建立輔助儲存的方法來節省時間.

  5. 通過一段時間的分析,你對解決這個問題已經有了自己的一些思路.或者說,你已經可以用自然語言把你的演算法簡單描述出來.繼續驗證其正確性,努力發現其中的錯誤並找出解決辦法.在必要的時候***發現了無法解決的矛盾***,推翻自己的思路,從頭開始構思.

  6. 確認你的思路可行以後,開始編寫程式.在編寫程式碼的過程中,儘可能把各種問題考慮得詳細,周密.程式應該具有良好的結構,並且在關鍵的地方配有註釋.

  7. 舉一個例子,然後在紙上用筆執行你的程式,進一步驗證其正確性.當遇到與你的設想不符的情況時,分析問題產生的原因是程式設計方面的問題還是演算法思想本身有問題.

  8. 如果程式通過了上述正確性驗證,那麼在將其進一步優化或簡化。

  9. 撰寫思路分析,註釋.

  對於具體的演算法思路,只能靠你自己通過自己的知識和經驗來加以獲得,沒有什麼特定的規律***否則程式設計師全部可以下崗了,用機器自動生成程式碼就可以了***.要有豐富的想象力,就是說當一條路走不通時,不要鑽牛角尖,要敢於推翻自己的想法。

  作業系統是一門很重要的課程,除了大家用的教材外,建議大家再看看以下一些相關書籍。想看理論方面的就推薦清華大學出版社《作業系統》吧,高教司司長張堯學寫的。另外推薦一本《Windows作業系統原理》機械工業出版社的,這本書是我國作業系統專家在微軟零距離考察半年,寫作歷時一年多寫成的,教作業系統的專家除了清華大學的張堯學***現高教司司長***幾乎所有人都參加了。Bill Gates親自寫序。裡面不但結合windows2000,xp詳述作業系統的核心,而且後面講了一些windows程式設計基礎,有外版書的味道,而且上面一些內容可以說在國內外只有那本書才有對windows核心細緻入微的介紹。

  學資料庫要提醒大家的是,會用VF,VB, Power builder,SQL Server不等於懂資料庫。***這世界上自以為懂資料庫的人太多了!***資料庫設計既是科學又是藝術,資料庫實現則是典型的工程。所以從某種意義上講,資料庫是最典型的一門計算機課程——理工結合,互相滲透。咱們人才培養方案中資料庫主要是兩門課,資料庫概論及應用,以及高階資料庫技術。第一門課主要講解資料庫基本原理,並結合一門資料庫講解應用技術。第二門課主要講解在程式設計過程中聯接資料庫、操作資料表和資料記錄的相關方法和技術。

  計算機網路作為碩士研究生入學考試專業課四門統考課程之一。推薦謝希仁的《計算機網路教程》***人民郵電出版社***問題講得比較清楚,參考文獻也比較權威。不過,網路也屬於Hardcore System,所以光看書是不夠的。建議多從網際網路上找一些參考資料閱讀,並利用我們的實驗室多實踐,以便加深對課本知識的理解。

  關於電腦科學的一些邊緣科學我想談一談軟體工程技術,對於一個企業,推出軟體是不是就是幾個程式設計師坐在一起,你寫一段程式,我寫一段程式呢?顯然不是。軟體工程是典型的電腦科學和數學,管理科學,心理學,社會學等學科的綜合。它使我們這些搞理論和技術的人進入了一個社會。你所要考慮的不僅僅是程式的優劣,更應該考慮程式與軟體的區別,軟體與軟體產品的區別,軟體軟體產品的市場前景,如何去更好的與人交流。這方面推薦給大家幾本書:暢銷20年不衰的《人月神話》***清華大學中文版,中國電力出版社影印版***,《軟體工程-實踐者研究的方法》***機械工業出版社譯本***,《人件》***據說每一位微軟公司的部門經理都讀過這本書,推薦老總們和想當老總的同學都看看,瞭解一下什麼是軟體企業中的人***以及微軟公司的《軟體開發的科學與藝術》和《軟體企業的管理與文化》***研究軟體企業的制勝之道當然要研究微軟的成功經驗了!***

  計算機技術牽扯的內容更為廣泛些,一項一項說恐怕沒個一年半載也說不清。我只想提醒大家的還是那句話,技術與科學是不能分家的,學好了科學同時搞技術,這才是上上策。猶如英語,原先人們與老外交流必須要個翻譯,現在滿馬路的人都會說英語。就連21世紀英語演講比賽的冠軍都輪不到英語系的學生了。計算機也是一樣的,我們必須面對的一個現實就是:計算機真就只是一個工具,如果不具備其它方面的素養,計算機系的學生雖然不能說找不到工作,不過總有一天當其他專業性人才掌握了計算機技術後將比我們出色許多。原因就在於計算機解決的大都是實際問題,實際問題的知識卻是我們少有的。單一的計算機技術沒有立足之地。

  另外還需要指出:學習每一個課程之前,都要先搞清這一課程的學習目的。這一學科的應用領域。據我所瞭解到的同學和低年級的同學的學習狀況:他們之中很少有人知道學一門課程的學習目的,期末考試結束了也不知道學這課做什麼用。這就失去了讀電腦科學的意義。

  有些同學說按照這樣學習學的東西太多,有的未見得有用,我想打個形象的比方:學校學出來的人都是一個球體,方方面面的知識都應具備。可是社會上需要球體的地方很少,反而需要的是磚和瓦,即精通某一行的人才。但是對於同等體積的物體,用球體來改造是最方便最省事的。學校的學生很多,為了能夠使更多的學生來適應這個社會,學校也就不得以把所有的學生都打造成一個球體,然後讓社會對這些學生進行再加工,成為真正能夠有用的人才。即使你非常清楚自己的將來要幹什麼,並且非常下定決心要走自己的路,這一步你也必須走,世界是在不斷變化的,你不能預料未來。想清楚,努力去幹吧!對於博大精深的電腦科學,我們每個人只能說永遠都是個Beginner。即使把以上說的這些這些全弄通了,前面的路還長,電腦科學需要我們為之奮鬥......學習電腦科學需要韌性,更需要創新,需要激情。深刻學習理論知識,勇於接受新技術的挑戰,這才是我們這一代人應具有的素質。希望同學們都能保持一顆平常心,戒驕戒躁,平和的埋頭學習吧。

  五、程式設計技能——你翱翔藍天的翅膀

  這一部分就以網際網路上一個完整的帖子:“修煉程式設計的內功”來說說程式設計技能培養的重要性。

  很多年以前,我還是一個學建築的學生,但是很喜歡學計算機。不過呢,由於專業限制,我沒有計算機用的。學校只開了一個學期的Fortran語言,上機時間只有可憐的5節課,那會把我憋壞了,呵呵。

點選下一頁分享更多