何 希,陳 佳,農 健
(梧州學院 大數據與軟件工程學院,廣西 梧州 543002)
“編譯原理”課程是一門介紹編譯器工作原理和方法的課程。它是高等學校培養計算機專業人才的主干課程之一,也是一門對理論、實踐要求都很高的課程。它既要求學生理解編譯原理、編譯系統結構、各種編譯算法,又需要學生具備設計、完成、分析和維護編譯程序的初步能力。同時,“編譯原理”課程又是計算機專業中一門綜合性很強的專業課程,需要以多門前修課程為基礎,如“數據結構”“離散數學”“操作系統”“程序設計”“匯編語言”等等。
據筆者了解,目前大多數“編譯原理”課程的內容包括詞法分析(正則表達式、非確定有限自動機、確定有限自動機)、語法分析(上下文無關文法、自上而下語法分析、自下而上語法分析)、語義分析和中間代碼生成(屬性文法、語法制導翻譯形成中間代碼)、代碼優化(局部優化、循環優化)和目標代碼生成。同時,一些“編譯原理”課程還會針對某些課程內容進行一些小型項目實踐和練習。
由于編譯系統復雜,所涉及的理論寬廣且深奧,而且課程涉及多門前修課程,大多數學生反映此課程內容枯燥、抽象、復雜。同時,由于課程講授難度大,學生積極性不高,參與度低,很多教師也不愿意開設“編譯原理”課程。有的高校為此縮減了“編譯原理”課程的課時個別高校甚至把此課程從人才培養計劃中刪除。筆者分析有以下原因造成了“編譯原理”課程目前的困境:(1)課程內容的設置偏理論輕實踐。……