斯坦福大學計算機專業培養方案剖析

斯坦福大學計算機專業培養方案剖析

建於1891年的斯坦福大學位於舊金山以南30英里,面積3313公頃,相當於清華大學校園面積的9.3倍。現有本科生6654人,研究生7800人,教師1396人。它蘊育了享譽全球的高技術產業中心——硅谷,在IT界如日中天的SUN、HP、Cisco、Google、SGI等企業都是由斯坦福大學學生和教授一手創立起來的。1984年後,斯坦福大學連續四年被《美國新聞與世界報道》列爲全美最佳綜合大學榜首。1994年,設在瑞士日內瓦的國際教師協會根據各大學的學術業績、科研成就、學生與系的綜合實力,評出世界十佳高等學校,斯坦福大學名列榜首。長年以來,創建於1965年的計算機學科在全美排名始終居於前三位。建校不過百餘年曆史的斯坦福大學和建系不足40年的計算機系,取得如此驕人成績,實在耐人尋味。

  爲學習國外一流大學的計算機教學和實驗室管理經驗,筆者受學校委派於去年對美國斯坦福大學等院校進行了爲期半年的訪問學習。重點考察了斯坦福大學計算機教學情況,包括培養方案、課程設置、實驗教學以及實驗室管理,並通過選修幾門課程瞭解其教學全過程。

  此次考察總的感覺是,斯坦福大學在計算機人才培養方面,體現了拓寬知識、突出個性、注重能力、面向應用的特點。下面通過剖析斯坦福大學計算機專業培養方案,試圖從中找到值得我們借鑑的因素。

  一、 培養方案

  本科畢業必須修滿180學分,其中專業學位課程(Program Requirements for CS Major)95學分(見表1),由工程學院負責審覈。其餘課程包括通識教育課(General Education Requirements,簡稱GER)、寫作課和外語課,由校學位辦負責審覈。

  本科學制4年,計算機系本科生四年1修課約45門,課程分佈如圖1所示。斯坦福大學爲學季制,全年共分4個學季,所有課程基本在秋、冬、春學季完成。

  二、 課程特點

  1.開闊眼界的通識教育課(GER)

  GER課程在斯坦福大學本科教學中佔有很大的比例。爲了拓寬學生視野,學校開設了700多門GER相關課程,涵蓋人文科學、自然科學、應用科學與技術、人類和社會學等各個領域,學生必須從四個領域選修10門課程。

  與國內通識教育課程可輕鬆過關的情形不同,斯坦福的GER課程常常伴隨着大量閱讀,學生需要讀很多書,寫論文,作報告。一位曾就讀清華的中國留學生感嘆到,斯坦福的人文課真不容易過關。然而,正是這一門門通識教育課開闊了學生的視野,潛移默化地培養了學生的寫作和語言表達能力。

  在教育學生做人方面,通識教育課起了不可替代的作用。以人文科學導論子領域爲例,開設了公民、認識自我、閱讀與個性形成、傳統與變革、生死觀、愛情與謊言、大自然思考、高雅藝術與大衆文化的變遷等課程,通過這些課程,學生認識自我、瞭解社會、思考人生,學習如何做一名合格公民。培養方案規定學生在入學第一學季必須選修其中一門課程,體現了爲學先爲人的教學理念。

  2. 啓迪思維的計算機公共基礎課

  國內高校的計算機入門課主要以技能性操作練習爲主,輔以基礎知識介紹,比如衆多高校開設的全校選修課“計算機文化基礎”中,Windows操作、Office練習佔了很大比重。斯坦福大學的計算機公共基礎課以啓迪思維、拓寬視野爲主,開設了一系列新生研討課,如“計算機系統結構的未來”,通過此課程介紹典型的計算機體系結構、技術發展以及侷限性,探討未來計算機一些可供選擇的組織結構及程序系統;又如“計算機與信息安全”,介紹******、計算機系統常見漏洞,防範***的技術措施、密碼技術與計算機安全有關的法律問題;再如“計算機領域的重大突破”(Great Ideas in Computer Science),介紹計算機發展史上的主要成就,考查計算機理論與實踐的相互影響,涉及的問題有計算能力的侷限性、算法效率、密碼技術、語言翻譯、人工智能、計算機網絡等。此外還有“計算機系統災難”(The Downside of Computer System),同時還討論計算機系統如何失效,計算機系統崩潰對社會造成的影響,並介紹了計算機崩潰導致災難的一些實例,討論計算機安全、容差結構等問題。

  可見,國外一流大學的公共基礎課是以計算機導論形式多角度地介紹計算機核心基礎知識。不僅從正面介紹計算機技術成就、給社會帶來的鉅變,也從反面介紹計算機的侷限性和教訓,提出學習計算機需要思考的問題。同時引入新生研討課的教學形式,這種課程模式對激發學生的求知慾有很大幫助。

  3. 體系完整的編程及編程語言課

  在程序設計方面,國內計算機專業只開設C、Java等少數幾門編程課。而斯坦福大學計算機系開設的程序設計及編程語言課多達15門,既有講解C、C+ +、C#、Java的專門的程序設計課,也有強調面向對象爲特徵的“C++與面向對象的編程”、“面向對象的系統設計”等編程課,還有講解 javaxxxx、HTML、CSS、XML的網絡客戶端編程課;既有橫向比較各語言難點和精髓的高級編程課,也有突出訓練程序設計能力的軟件實踐類課,還有編程語言基礎理論課。

  程序設計入門課因分快慢班有三個課號,分別爲CS106A、CS106B和CS106X。其中CS106A使用C,爲初級編程,CS106B是CS106A的後續課,使用C++。CS106X面向有編程基礎的學生,涵蓋CS106A和CS106B的內容,在一學季完成。CS106是全校的公共基礎課,也是絕大多數專業的必修課,每學季選課人數衆多。爲此,學校配備了大量助教,通常由修過此課的高年級本科生承擔,稱爲Section Leader(SL)。學生每十餘人分爲一個小組,由一名SL負責輔導,並經常組織討論。

  最值得推薦的編程課有 “程序設計範式”(CS107 Programming Paradiams),這是一門計算機專業的必修課,重點分析比較C、C++、Java、LISP的特點及難點,比如內存管理、系統資源利用、輸入、輸出等。講解實現一種算法的過程中各語言的設計步驟和注意點。每1~2周有一個大作業,針對不同的任務,要求學生用不同的語言實現,使學生加深瞭解各類編程語言的應用場合。

  與國內相比,必修的計算機專業課門數並不多,但幾乎每門課程都有編程大作業,負擔很重。雖然未設軟件工程課,但通過一些大作業訓練了學生的軟件工程思想。

  4. 重視培養表達能力的專業寫作課

  在培養方案中,設置專門的寫作要求是斯坦福大學本科培養方案的一大特色。寫作訓練分爲兩個階段。首先是基礎寫作,重點培養學生一般的寫作能力和修辭技巧;其次是專業寫作,學生需從含有較高寫作要求的三門課程中選擇一門,完成專業寫作訓練。

  培養方案中沒有綜合論文訓練環節,但有一門實踐類課程“軟件項目設計”(Software Project)使學生不僅受到了一次真正的軟件設計訓練,同時也受到了一次綜合論文寫作訓練。在爲期10周的課程中,學生1~4人分爲一組,以Team Work形式完成一個有實用價值的軟件項目,要求實現從設計立項、任務描述、編程到測試的軟件開發全過程。除編寫每階段設計文檔外,還要求學生撰寫用戶使用手冊。這裏沒有抄書的餘地,因爲一切文檔都與自己開發的軟件相關。

  斯坦福大學非常注意培養學生的表達能力,爲此設立了專門的指導機構 Stanford Writing Center。該中心開設了十多門寫作課程,並時常舉辦寫作系列講座。工程學院也開設了一些旨在提高學生寫作和演講能力的課程。如寫作實踐課,幫助學生提高學術論文和學位論文寫作水平;又如公衆演講課,內容涵蓋正式演講、即興發言等與口語表達相關的方方面面。此外還設立了演講與寫作答疑室,配備了錄像和播放設備,使前來答疑的學生可以看到自己的試講錄像,對提高學生的演講能力幫助極大。

  三、 教學管理

  在教學管理上,斯坦福大學給學生提供了非常寬鬆的自由發展空間。新生入校後不分專業,不分學院。除了醫學院和法學院需要經過一定的選拔程序之外,本科生可以在入學後的前11個學季的適當時候隨意選擇專業。並且選擇專業之後,允許更改,只要畢業時滿足專業培養方案即可。

  學生選課的自由度也很大,由於選定專業方向的時間不同,即使同年入校的計算機專業的學生,選課次序和內容也有不少差別。培養方案規定必須完成180學分,除圖1限定的各類課程外,還剩幾門課程學生可以任選。本科生與研究生的課程沒有明確的界線,可以互選。一些較早立志攻讀計算機專業研究生的學生,可能會多選一些專業課,甚至研究生課程;而打算畢業後到IT企業做管理工作的學生,可能會多選擇一些管理類課程。

  隨着計算機應用的普及,計算機學生的就業面越來越廣。正如斯坦福大學計算機培養方案序言中所述,越來越多的計算機專業學生,就業興趣可能在其他行業,比如成爲高技術企業的經理、專攻軟件保護的律師、通曉計算機的醫學專家,他們計算機本科畢業後,可能轉攻MBA、法學博士或醫學博士。這正是斯坦福大學在培養方案和教學管理上,尊重學生個性發展,提供寬鬆發展空間的內在原因。

  四、 幾點體會

  與國際一流大學相比較,我們在課程設置、培養方案、教學管理等方面均存在不小差距,下面談幾點體會和建議:

  (1) 加強課程建設,滿足新世紀計算機人才培養需要

  一方面要加強通識教育課程建設,增加人文社會科學課程的數量,擴大學生視野;另一方面,要加強專業基礎和專業課建設,加強和完善編程類課程,提高學生的程序設計能力。注意更新教材,改進教學內容,借鑑國外一流大學的經驗,保證重點專業課程,尤其是系統類課程的教學質量。斯坦福大學面向計算機專業的四門本科核心課程,如CS107編程範例、EE108B數字系統Ⅱ(原名計算機組成與設計)、CS140操作系統、CS143編譯原理,均由名師執教,其教學方法、內容組織、作業設計很有特色,值得國內高校同行借鑑。

  此外,還需要大力改進我們的計算機公共基礎課,使其逐步從技能訓練課程過渡到計算機基礎知識和科學導論上來,加強課程廣度以及對計算機核心基礎知識的介紹。

  (2) 重新制訂培養方案,擴大學生自由發展空間

  目前我們的培養方案必修環節太多,學生自由選擇餘地很小,限制了學生的發展空間。建議大量增加選修課,並適當增加一些人文必修課,提高學生在經濟學、中西方哲學、中西方文學等方面的素養。

  同時減少必修課,精簡思想政治課。對於一些必修的平臺課注意控制學時,寧可平臺搭得低一些,再輔以不同的臺階讓學生根據自身發展需要進行選修。建議將一些學時較長的技術基礎課拆分爲多門,一部分轉爲選修。

  (3) 加強學生寫作訓練和演講能力訓練

  語言表達能力是學生立足社會的最基本能力,受現行教學方法影響,學生在課堂上常常被動聽講,缺乏寫作和演講訓練,學生的語言表達能力普遍較差,極大地影響了學生今後的發展。爲此,建議開設全校性寫作訓練必修課,並且在綜合論文訓練環節,增加寫作指導環節,增加和明確寫作要求,提高學生學術論文和學位論文寫作水平。

  建議有條件的學校,建立交流培訓中心,全面提高學生的寫作和演講能力。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章