資源描述:
《編譯原理課程實踐改革探索》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、編譯原理課程實踐改革探索摘要:本文介紹了我系對編譯原理課程實踐的改革,陳述了該實踐活動的內容、方法、效果和經驗教訓。
關鍵詞
本文來自:計算機畢業(yè)網:編譯原理;課程實踐;改革
1引言
當今本科生人數大幅增加,高校畢業(yè)生就業(yè)競爭加劇,用人單位對人才要求不斷提高,計算機及相關專業(yè)的不少畢業(yè)生在就業(yè)過程中暴露出動手能力差、分析問題解決問題能力薄弱、創(chuàng)新意識不強等問題。這些問題的出現在很大程度上反映出高校在學科的專業(yè)實踐(特別是課程實踐)教學方面的不足:
1)各課程的課程實踐各自獨立
2、,實踐內容跟不上計算機科學與技術的發(fā)展,內容陳舊、覆蓋面窄、綜合性不高、難度低、規(guī)模小,不注重對學生工程、質量、團隊等意識的培養(yǎng);
2)學生數與助教數比率增加,一些學校采用研究生作為助教,助教對學生實驗的檢查力度和深度不夠,難以真實反映學生的實驗水平;
3)未結合新形勢下學生的特點來規(guī)劃和組織實踐,學生的熱情不高,拷貝風氣日益蔓延?,F在的學生興趣廣泛,精力分散,多數有計算機,但是投在課程學習及實踐的時間大大減少;不少學生學習目標不明確,遇到挫折容易退縮,在學習上的鉆勁和毅力有所降低。
針對這種現狀,筆者認為加強和改善專業(yè)實
3、踐應首先抓課程實踐改革,而課程實踐改革則應以整體規(guī)劃各計算機專業(yè)課的課程實踐為指導思想。專業(yè)實踐所能覆蓋的程度依賴于制度的保證、學科機構的資源以及教職人員的利益。
就軟件類的課程而言,課程實踐主要圍繞著軟件的設計與實現展開。課程實踐的整體目標是學生至少能參與完成一個有一定規(guī)模的軟件項目的設計與開發(fā),這樣的項目應能涉及到對多門課程所學原理的綜合運用。在整體規(guī)劃課程實踐時,應遵循由小到大、循序漸進的原則,注意整體規(guī)劃課程實踐所涉及的語言、工具和環(huán)境,注意學生軟件工程意識、質量意識和團隊意識等的培養(yǎng)。
在內容選取上,低年級的課程實踐(如C
4、語言、數據結構)以鞏固課程知識的小實驗為主,訓練學生基本的程序設計技能;而高年級的課程實踐(如編譯原理、操作系統(tǒng)等)則應以綜合運用的課程設計為主,訓練學生軟件工程的能力。
在上述思想的指導下,筆者經過兩年多的調研和準備,于2007年上半年在本系2004級學生的編譯原理教學實踐中開展了編譯原理課程實踐改革。本文將在以下各節(jié)依次介紹這次課程實踐改革的內容、方法和實施效果,總結實踐中的經驗教訓,供同行參考。
2課程實踐方案
2.1課程實踐的規(guī)劃及歷程
根據上述指導思想,我們將編譯課程實踐定位為綜
5、合運用的課程設計,即學生(通過合作)為某個實用語言設計和開發(fā)一個可運行的編譯器。這不僅能使學生加深對編譯原理和技術的理解,還能提高學生的軟件開發(fā)水平。學生在實踐中將熟悉和掌握一些軟件工程工具、環(huán)境和規(guī)范,培養(yǎng)工程、質量和團隊等意識。
制定這樣的課程設計方案,首先要合理選擇編譯知識點,定義待實現的語言;然后對語言的編譯器進行模塊劃分和預實現,估計實現的難度和工作量;最后研制提供給學生的支持庫、樣例、工具和文檔,明確學生的任務。在方案研制中,既要注意使課程設計有一定的規(guī)模,又要考慮到學生和課時的實際情況,以使學生在有限的時間內盡可能多地掌握編譯知
6、識并得到綜合訓練。
為此,我們于2004年秋開始調研國外一些知名大學的編譯課程設計,從中選擇美國加州大學伯克利分校的編譯課程設計進行深入分析與研究。我們以本科畢業(yè)論文的形式讓學生做其中的部分實驗,從中感受和總結實驗的難度、難點以及工作量等。2006年起,我們著手設計適合國情的課程設計,它由一系列的小課程設計組成,學生通過循序漸進地做其中的一部分即可實現一個實用語言。我們選取Java語言的一個子集MiniJOOL作為實驗語言,它不支持import和package指令,也不支持interface、抽象類和抽象方法、public等訪問控制修飾和異常
7、等,程序中所有的類都放在同一個文件中。這樣的語言既具有相當規(guī)模的語言特征,又比Java語言小得多。但是即便如此,實現這樣的語言也不容易。為循序漸進地引導學生進行語言的實現,我們又對MiniJOOL進行裁剪,定義了SimpleMiniJOOL和SkipOOMiniJOOL兩個非面向對象語言。前者只允許程序中包含一個方法,后者則包含MiniJOOL的所有非面向對象特性。目前,系列課程設計及支持庫等仍在不斷改進之中,感興趣的同行可以從http://staff.ustc.edu.cn/~yuzhang/compiler獲得已研制并已在使用的相關課程實踐資源。<
8、br> 為檢驗系列課程設計及相關資源的合理性和效果,發(fā)現其中的疏漏和不足之處,我們在2007