編譯原理課程設(shè)計與教學(xué)改革論文
作為一名教學(xué)工作者,就難以避免地要準備教學(xué)設(shè)計,編寫教學(xué)設(shè)計有利于我們科學(xué)、合理地支配課堂時間。一份好的教學(xué)設(shè)計是什么樣子的呢?以下是小編精心整理的編譯原理課程設(shè)計與教學(xué)改革論文,歡迎大家借鑒與參考,希望對大家有所幫助。
【摘要】本文探討了目前國內(nèi)很多高校《編譯原理》課程設(shè)計過程中存在的問題,根據(jù)從問題中學(xué)習(xí)的思想,理論指導(dǎo)實踐的方法,提出了以實際項目為依托的“崗位導(dǎo)向,校企合作”的課程設(shè)計方式,并給出了切實可行的實施方案,實現(xiàn)“教、學(xué)、做”一體化,提高學(xué)生的學(xué)習(xí)興趣,提高課程設(shè)計環(huán)節(jié)的教學(xué)效果。
【關(guān)鍵詞】編譯器;詞法分析;語法分析
1課程設(shè)計過程現(xiàn)狀分析
編譯技術(shù)是計算機科學(xué)中發(fā)展最迅速,最成熟的一個分支,集中體現(xiàn)了計算機的成果與精華。但是編譯程序的設(shè)計與實現(xiàn)過程涉及其他很多相關(guān)課程,例如《數(shù)據(jù)結(jié)構(gòu)》、《算法分析與設(shè)計》、《C++語言程序設(shè)計》和《操作系統(tǒng)》等,目前國內(nèi)外各高校對編譯器的設(shè)計僅限于簡單文法的編譯程序設(shè)計,相當一部分同學(xué)對此都感到難度很大,編譯程序課程設(shè)計的積極性不高[1],另外課程設(shè)計課時的限制,只能分模塊進行,無法保證學(xué)生獨立完成編譯程序的整體設(shè)計與實現(xiàn),導(dǎo)致學(xué)生們對編譯程序的理解也只是粗枝大葉,對局部斷章取義,不能整體理解,失去了實踐的真實意義。表現(xiàn)為:
(1)內(nèi)容的設(shè)置缺乏連續(xù)性;
(2)忽視學(xué)生實踐能力的差異,內(nèi)容固定單一;
(3)忽視編譯方法和技術(shù)與實際應(yīng)用結(jié)合。編譯程序是一種翻譯程序,翻譯的過程實際上也是在解決一個現(xiàn)實問題的過程,集中體現(xiàn)了人們的計算思維能力,在以后從事計算機專業(yè)的工作中,這種解決問題的方法和思路會反復(fù)用到[1]。企業(yè)中的軟件設(shè)計也會用到編譯理論的許多想法和技術(shù),如有窮狀態(tài)技術(shù)用于文本編輯程序、情報檢索、模式識別;上下文無關(guān)文法、語法制導(dǎo)翻譯用于建立多種文本處理程序;代碼優(yōu)化技術(shù)用于程序校驗,由非結(jié)構(gòu)化到結(jié)構(gòu)化的程序轉(zhuǎn)換等,而這些技術(shù)同樣在學(xué)生的就業(yè)、創(chuàng)業(yè)過程中都會用到。在計算機專業(yè)所有課程中只有編譯原理這門課最能鍛煉學(xué)生的計算思維,而這種能力的獲得不是通過上好編譯原理課程,短時間的簡單的編譯程序,需要在課程設(shè)計過程中的大量的摸索和思考來實現(xiàn)。為了提高計算機專業(yè)學(xué)生的高薪就業(yè)率就非常有必要強調(diào)《編譯原理》課程設(shè)計[2]。
2解決思路
為了幫助學(xué)生掌握編譯原理的理論知識,激發(fā)學(xué)生學(xué)習(xí)編譯原理的興趣,深入理解編譯技術(shù),對課程設(shè)計環(huán)節(jié)進行了大膽改革,采用“崗位導(dǎo)向,校企合作”基于OBE(以產(chǎn)出為導(dǎo)向)的《編譯原理》課程設(shè)計模式,目的是將理論課程中所介紹的詞法分析及語法分析等算法設(shè)計思想能和具體應(yīng)用結(jié)合起來,以激發(fā)學(xué)生的主動性和創(chuàng)造性,培養(yǎng)學(xué)生的創(chuàng)新能力和解決實際問題的能力[3],課程設(shè)計內(nèi)容是把編譯技術(shù)應(yīng)用在具體的企業(yè)項目中,解決企業(yè)中出現(xiàn)的編譯方面的問題,如基于有限自動機理論的飲料自動售貨機系統(tǒng)的設(shè)計、基于有限自動機原理的漢語詞匯的分割、輪胎成型機計算機監(jiān)控系統(tǒng)設(shè)計[3]。這些課程設(shè)計內(nèi)容能幫助學(xué)生更好地理解形式語言和自動機理論、編譯程序的編寫等,從具體問題的分析、設(shè)計以及編碼實現(xiàn)的整個編譯器的設(shè)計過程能慢慢學(xué)生的專業(yè)素養(yǎng)[3]。為將來計算機領(lǐng)域的就業(yè)、創(chuàng)業(yè)打好基礎(chǔ)。(1)采用“崗位導(dǎo)向,校企合作”課程設(shè)計模式,強化技術(shù)應(yīng)用特色,注重素質(zhì)能力培養(yǎng),注重技術(shù)應(yīng)用于實踐能力培養(yǎng),強化工程化訓(xùn)練和能力培養(yǎng)。(2)以“項目帶動實踐,以實踐帶動教學(xué)”來重新整合構(gòu)建課程教學(xué)體系,將實踐中用到的最新技術(shù)、新方法及研究成果融入教學(xué)中,構(gòu)建理論與實踐一體化的開放式教學(xué)模式。(3)提高學(xué)生的“競爭意識,團隊意識”?己瞬捎梅纸M考核,分階段考核,并對考核結(jié)果進行記錄,作為匯總考核的參考,加大素質(zhì)和實際應(yīng)用能力考核力度。(4)培養(yǎng)學(xué)生的“計算思維”,編譯技術(shù)中的從高級語言轉(zhuǎn)換為低級語言的過程是求解具體問題的過程,集中體現(xiàn)了計算思維[1]。
3課程設(shè)計內(nèi)容組織
通過調(diào)研多家企業(yè),了解企業(yè)崗位需求,根據(jù)企業(yè)崗位要求確定本課程內(nèi)容相關(guān)的知識目標、技能目標、素質(zhì)目標,形成理論教學(xué)與實踐教學(xué)任務(wù)。以工程項目為任務(wù)驅(qū)動,以崗位真實的工作任務(wù)要求為背景,設(shè)計課程設(shè)計內(nèi)容。引導(dǎo)學(xué)生利用所學(xué)的詞法分析、語法分析知識等去解決實際問題。這就要求學(xué)生能夠針對C等高級程序語言設(shè)計并開發(fā)出可用的編譯程序。在設(shè)計編譯器這么一個龐大而復(fù)雜的系統(tǒng)程序,應(yīng)該遵循軟件工程的思想,按照分析、設(shè)計、編程實現(xiàn)、測試和維護等開發(fā)過程才能保證開發(fā)出來的編譯程序的質(zhì)量[2]。根據(jù)系統(tǒng)功能進行模塊劃分,對學(xué)生進行分組,根據(jù)自己的愛好,可以選擇系統(tǒng)分析、算法分析、數(shù)據(jù)結(jié)構(gòu)、編碼設(shè)計、報告撰寫為自己的課程設(shè)計重點,同時通過組內(nèi)互相交流,補充自己其他方面的知識,加強對編譯器的總體把握,以及科技表達能力的培養(yǎng)。
4具體實施
“以企業(yè)實際項目為依托,教師為主導(dǎo),學(xué)生為主體”,體現(xiàn)學(xué)生主動參與、協(xié)同合作、探索創(chuàng)新的教學(xué)模式。通過項目研發(fā),實現(xiàn)“教、學(xué)、做”一體化。強調(diào)項目任務(wù)真實性、教師指導(dǎo)的目標及過程的指引性、學(xué)生學(xué)習(xí)的積極主動性、實踐過程的探究性和合作性、評價的過程性和反思性等。具體實施7個步驟:
(1)選題分組。先由教師提出實訓(xùn)目標、要求、步驟和項目選題,分組一般以4~5人為一個小組,根據(jù)學(xué)生的特點,可供選擇的任務(wù)為編譯程序詞法分析、編譯程序語法分析、語義分析和中間代碼生成、代碼優(yōu)化和目標代碼生成為自己的課程設(shè)計重點,組內(nèi)人員定期交流,相互之間可以查漏補缺,從而總體把握編譯器設(shè)計實現(xiàn)過程[4]。
(2)制定計劃并進行可行性分析。學(xué)生明確選題項目目標、任務(wù)和計劃,完成計劃書,教師對學(xué)生的計劃進行可行性分析。
(3)需求分析:教師帶領(lǐng)學(xué)生到企業(yè)做實際調(diào)研,結(jié)合應(yīng)用領(lǐng)域知識的了解,了解編譯部分的工作需求。
(4)設(shè)計:根據(jù)具體題目做好編譯部分的工作,對源語言語言進行詞法分析、語法分析、語義分析、生成中間代碼、代碼優(yōu)化、最終生成目標代碼[5],編譯過程如圖1所示。
(5)按照任務(wù)時間節(jié)點考核和最后的匯報考核相結(jié)合的考核辦法,根據(jù)不同的題目難度給定相應(yīng)的權(quán)重,采用加權(quán)形式。在每個任務(wù)時間節(jié)點要進行考核,是否完成相應(yīng)節(jié)點規(guī)定的任務(wù),并給出進一步努力的方向,完成情況進行記錄。匯報考核時,以小組為單位進行公開答辯,講解分析過程、設(shè)計過程,對功能進行演示,回答其他小組及指導(dǎo)教師的問題[2]。
(6)項目實施。根據(jù)設(shè)計內(nèi)容進行編程實現(xiàn),指導(dǎo)教師提供適時啟發(fā)和引導(dǎo),定時進行小組討論,發(fā)現(xiàn)問題尋找解決方法和思路。
(7)總結(jié)評價與體會。根據(jù)項目交流的情況寫出項目體會,指導(dǎo)教師根據(jù)小組項目體會進行總結(jié),并對提交的文擋和作品進行評價形成總結(jié)性評價報告。
5結(jié)語
開展“以企業(yè)實際項目為依托,教師為主導(dǎo),學(xué)生為主體”的編譯原理課程設(shè)計教學(xué)活動后,學(xué)生的編程能力有了很大的提高,分析問題及解決問題的能力也有了質(zhì)的飛躍,期末編譯考試平均成績接近80分[2],學(xué)生普遍認為,結(jié)合工程項目的題目科學(xué)合理,以小組為單位進行課程設(shè)計使同學(xué)各盡所能,增強了學(xué)生的自信心、學(xué)習(xí)的主動性和積極性!毒幾g原理》學(xué)習(xí)興趣將進一步會帶動了計算思維能力的提高,計算思維能力的提高促進了創(chuàng)新性成果的產(chǎn)生,形成了很好的良性循環(huán)[2]。
參考文獻:
。1]柴艷妹,馬燕林.編譯原理課程教學(xué)改革研究[J].計算機教育,2011(20):36~39.
。2]張晶,金英,劉磊.“編譯原理”實踐課程教學(xué)方法研究[J].計算機教育,2009(21):19~21.
。3]金永霞,丁海軍.《編譯原理》實驗的層次化設(shè)計[J].現(xiàn)代計算機(專業(yè)版),2012(8):28~30.
[4]王改芳,龔君芳,李圣文,張冬梅.編譯原理課程實踐教學(xué)改革探索[J].實驗技術(shù)與管理,2009(21):130~131.
。5]張冬茉,方習(xí)文.編譯原理課程設(shè)計的教學(xué)實踐與改革[J].實驗室研究與探索,2012(11):134~137.
【編譯原理課程設(shè)計與教學(xué)改革論文】相關(guān)文章:
通信原理課程教學(xué)改革論文03-07
環(huán)境工程原理課程教學(xué)改革論文12-05
學(xué)習(xí)遷移理論在《編譯原理》教學(xué)中的應(yīng)用03-04
數(shù)據(jù)庫原理及應(yīng)用課程教學(xué)改革論文03-19
《數(shù)據(jù)庫原理與應(yīng)用》課程教學(xué)改革初探論文11-23
談通信原理實驗教學(xué)改革02-26
日語教學(xué)改革的論文05-27
關(guān)于計算機語言編譯技術(shù)的探究論文12-02
鋼琴教學(xué)改革論文03-19
- 相關(guān)推薦