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