“編譯原理”是大學本科計算機類專業(yè)的一門主干課程。設置該課程的目的在于系統(tǒng)地向學生講述編譯系統(tǒng)的結構、工作流程以及編譯程序各組成部分的設計原理和實現(xiàn)技術,使學生通過本課程的學習,既掌握編譯理論和方法方面的基本知識,同時也獲得設計、實現(xiàn)、分析和移植編譯程序方面的初步能力。由于編譯系統(tǒng)的設計與實現(xiàn)涉及到離散數(shù)學、形式語言與自動機理論、程序設計語言、數(shù)據(jù)結構、軟件工程學以及計算機系統(tǒng)結構等許多領域,需要綜合運用這些知識來解決本課程所提出的一些問題;另一方面,本課程所闡明的一些概念、原理、技術和方法也可應用于其他系統(tǒng)軟件和應用軟件的開發(fā)之中。因此,建設高質量的“編譯原理”精品課程對于高級計算機專業(yè)人才的培養(yǎng)有重要的作用。西北工業(yè)大學“編譯原理”課程在師資力量、教材建設諸方面均處于國內(nèi)同類課程前列,已成為國內(nèi)同類課程中特色鮮明、影響很大、受到普遍贊譽的一門課程。
課程創(chuàng)新點
編譯程序是計算機的一種十分復雜的系統(tǒng)軟件,研制編譯系統(tǒng)既有較深入的理論問題,同時也有十分繁瑣的實現(xiàn)技術細節(jié)。這就使得“編譯原理”必然成為一門理論性和實踐性都很強,且比較難學的課程。根據(jù)以往的教學經(jīng)驗,學生普遍感到在學習本課程時,難以深入理解編譯程序的內(nèi)部工作機制及其設計、實現(xiàn)原理,特別對建立編譯系統(tǒng)的整體概念尤感困難。這固然與課程本身的特點有關,但若有一套便于教學的高質量教材和教輔資料,教學效果就可能大為改觀。我校“編譯原理”課程教學,主要有以下幾個創(chuàng)新點:
(1)教學內(nèi)容具有先進性和科學性 計算機科學技術是發(fā)展最迅速的學科之一,為了使教學內(nèi)容能適應新世紀我國培養(yǎng)研究型及實用型計算機專業(yè)人才的需要,在教學內(nèi)容上我們特別注意吸納國內(nèi)外編譯理論、技術和編譯器開發(fā)工具的最新研究成果,不斷修訂、更新教材,使所講授的內(nèi)容始終能跟蹤國內(nèi)外主流技術的步伐。
(2)突出理論知識、培養(yǎng)邏輯思維能力的教學體系在教學體系上,我們特別注重形式化或半形式化開發(fā)技術的講授,使教學內(nèi)容有堅實的理論支撐,并注意學生抽象思維和邏輯思維的培養(yǎng)。在一些關鍵內(nèi)容的具體處理上,我們以屬性文法與自動機理論為基礎,將語法制導翻譯技術和識別器的自動生成有機結合起來,使編譯器的設計與實現(xiàn)更為規(guī)范,減輕了學生學習的難度,回避一些具體技術細節(jié)的困擾。
(3)充分發(fā)揮網(wǎng)絡資源優(yōu)勢為幫助學生更好地學習“編譯原理”課程,我們充分利用網(wǎng)絡資源,建立了“編譯原理”課程教學網(wǎng)站。為廣大學員可以在不同時間和地點學習該課程提供了便利。網(wǎng)站提供了豐富的教學資料及模擬教學實踐平臺,滿足在校學生網(wǎng)上自主學習“編譯原理”課程的需要,全面了解“編譯原理”課程的主要內(nèi)容。目前上網(wǎng)的課程資源主要有:課程介紹、網(wǎng)絡課程、電子教材、重點難點、在線課堂、試題庫、在線自測、課程實踐、編譯課程論壇等。
課程建設的具體實施辦法
(1)既進一步精選教學內(nèi)容,又從整體上使教材更具系統(tǒng)性和科學性,特別是對那些作為整個課程理論基礎的基本概念和基本原理,以及有典型意義、效果好、應用比較廣泛的主要編譯技術和方法,應細致深入地進行討論,使學生對編譯系統(tǒng)的特點有較明確、深入的認識。
(2)根據(jù)學生的認識規(guī)律來組織安排教學內(nèi)容,力求做到層次清晰,重點突出,難點分散;既深入淺出地將編譯程序各組成部分的基本功能、邏輯關系、實現(xiàn)思路闡述清楚,又不過分糾纏于一些繁鎖的具體技術細節(jié);在敘述上力求文筆流暢,通俗易懂,便于自學。
(3)對于近幾年出現(xiàn)的編譯技術方面的新成果在教材中應有所反映;特別是對目前一些比較流行、使用效果良好的編譯程序開發(fā)與支持工具的新版本的功能及使用方法,教材中應適當進行介紹。
(4)加強實踐性環(huán)節(jié)的教學內(nèi)容,其主要途徑是:a.教材所附的習題和上機實習題盡可能覆蓋課堂講授的最基本教學內(nèi)容;b.提供一些比較典型但規(guī)模不大的編譯器源代碼,讓學生分析研究;c.提供若干個高級語言子集的文法,讓學生自己動手編寫和調試相應的編譯器。若上述教學內(nèi)容安排得當,不僅可使學生加深對課程內(nèi)容的理解,而且還有助于提高學生獨立開發(fā)系統(tǒng)軟件的能力。
(5)進一步完善本書的電教版,以便更新教學手段,減輕講課教師的勞動強度,提高課堂教學的效果和質量。
(6)進一步完善配套的課程網(wǎng)站的開發(fā),以提高學生學習過程的直觀性和可視化程度。
(7) 完成其他教輔資料的編寫。
課程相關教材介紹
我校于1979年開設“編譯原理”,是國內(nèi)最早講授此課程的高校之一,許多兄弟院校,甚至是重點院校的教師都曾經(jīng)來我校進修該課程,學習編譯原理的教學經(jīng)驗。
我們曾編寫出版過兩種風格不同的部委規(guī)劃教材,其一為《編譯技術》,于1985年出版,1992年在臺北出版繁體字本;其二為《編譯原理》(第一版),是在我校使用十余次的講義基礎上,先后經(jīng)三次較大充實、更新、修改,于1993年正式出版的部委規(guī)劃教材,該教材曾于1996年獲部級優(yōu)秀教材二等獎。
《編譯原理》(修訂第二版)被列為普通高等教育“九五”國家級重點教材,于1999年9月出版。根據(jù)有關專家評議,認為該書體系科學合理,內(nèi)容的取舍和組織得當,對基本概念和原理的論述準確、清楚,并十分注意對學生思維的啟發(fā),使讀者易于理解和掌握。該書出版后,迄今已印刷過11次,共6.8萬冊,據(jù)初步了解,已有80余所兄弟院校采用,普遍反映很適合教學工作需要,特別便于讀者自學。該教材榮獲2002年國家級優(yōu)秀教材二等獎。
此外,我們還制作了與該書配套的電子教案,并于2002年出版了配套的課程學習輔導書,經(jīng)試用取得了良好的效果。目前正在進行該輔導教材的改版修訂工作,預計2006年6月出版該書第二版。
《編譯原理》(修訂第三版)被列為普通高等教育“十五”國家級重點教材,并于2005年元月出版。正在修訂的《編譯原理》(修訂第四版)已被列入“十一五” 國家級重點教材選題。
為搞好“編譯原理”課程的教學工作,教學組經(jīng)常在一起交流、切磋教學工作,開展教學法研究,并多次對已成熟的教材進行修訂。
根據(jù)Computing Curricula 2001(簡稱為CC2001)及China Computing Curricula 2002(簡稱為CCC2002)教學計劃大綱要求,注意吸取近幾年來編譯技術及系統(tǒng)軟件開發(fā)技術方面的某些最新成果,另一方面,在教學手段的更新及教學輔助工具的完善上(如向教師提供電化教學版本,建立課程教學網(wǎng)站,向學生提供學習輔導工具等)作一些探索。
主講教師個人簡歷
康慕寧教授,男,1955年生于西安。1978年作為“文革”后第一批高考生,考入西北大學計算機系,1982年1月畢業(yè),獲學士學位;同年,考入西北工業(yè)大學計算機系(學院)做研究生,1984年畢業(yè),獲碩士學位。1984年7月至今,在西北工業(yè)大學計算機系(學院)任教。1988年9月至1991年10月曾在德國漢堡大學進修??的綄幨俏倚S嬎銠C學院教學骨干,主講過“編譯原理”、“離散數(shù)學”、“組合數(shù)學”、“形式語言”與“自動機”等多門課程,教學成績突出,多次獲得學院學生和領導的贊揚和表彰。曾獲校教書育人一等獎,二等獎各一次,優(yōu)秀教學成果二等獎一次;榮獲獎教金多次。1997年被評為校優(yōu)秀回國人員,1998年被評為??缡兰o教學“雙百人才”。1997年以來,一直擔任計算機學院教學指導小組成員。主編及參與編寫教材多部,其中作為主編之一的《編譯原理》教材被評為2002年國家級優(yōu)秀教材二等獎。參與科研項目多項,主持經(jīng)費一百余萬。發(fā)表科技論文數(shù)篇。主講的“編譯原理”課程于2005年獲得“教育部-微軟精品課程”立項。
蔣立源教授,男,1935年生。1961年畢業(yè)于西北工業(yè)大學計算數(shù)學專業(yè),長期從事計算機軟件的教學和科研工作,對形式語言、編譯理論及并行軟件開發(fā)技術有較系統(tǒng)和深入的研究,主持或參與過JOVIAL語言編譯器自動測試系統(tǒng)、并發(fā)PASCAL編譯系統(tǒng)、183BASIC解釋系統(tǒng)及PD-100并行仿真計算機FDS系統(tǒng)的研制,先后獲得國家科技進步二等獎、航空航天部科技進步一等獎、全國科學大會獎及國家教委科技進步二等獎等多項獎勵,發(fā)表過論文十余篇,榮立航空科技研究院三等功一次,獲“科技之星”獎章,享受政府特殊津貼。蔣立源教授至今仍在教學第一線工作,先后為本科生和研究生主講過“程序設計語言”、“數(shù)值計算”、“編譯原理”、“形式語言與自動機”、“遞歸函數(shù)論”及“可計算性理論”等課程,對編譯原理課程建設,特別是教材建設投入了大量的精力,主編或參加編寫了6部教材,其中《編譯原理》相繼入選“九五”、“十五”、“十一五”國家級重點教材,獲2002年全國普通高校優(yōu)秀教材二等獎;《編譯技術》為部委規(guī)劃教材,獲得過航空航天部優(yōu)秀教材一等獎,臺灣儒林圖書公司購買了該書的版權,1992年在臺北出版了繁體字版。
鄧正宏博士,男,1975年生,重慶江津人,西北工業(yè)大學計算機科學與工程系講師,現(xiàn)從事軟件工程、數(shù)據(jù)分析、面向對象的研究工作。1997年起,在西北工業(yè)大學計算機學院任教。擔任國家“十五”規(guī)劃重點教材《編譯原理》電子教材的制作及編譯原理教學網(wǎng)站建設工作。主講《面向對象技術》、《面向對象分析與設計》、《軟件工程》,發(fā)表科研論文多篇,主編教材《程序設計方法學》和《面向對象技術》(均由國防工業(yè)出版社出版)。
林奕,男,29歲,西北工業(yè)大學航天工程學院博士后,2005年11月獲西北工業(yè)大學軟件與理論博士學位。長期從事計算機軟件與理論方向的研究,主要研究方向涵蓋形式化方法、編譯技術、軟件工程、分布/并行計算等。在博士期間,曾作為主要參加者,參與了多項國家課題的申請和研究工作,如國防重點實驗室基金、AOS,以及多項橫向課題的研制工作;發(fā)表了多篇學術論文,并參與了“國家‘十五重點教材”《編譯原理》的改版工作。本人的研究以理論為基礎,結合在研課題對軟件構件理論的實際應用和形式化理論均有長期研究經(jīng)驗,并運用編譯技術解決了自動并行化等項目中的實際問題。
薛賀副教授,男,1946年生。1973年8月畢業(yè)于西北工業(yè)大學計算機專業(yè),同年留校任教。先后參加某飛機數(shù)據(jù)處理系統(tǒng)、BZX-1信號處理系統(tǒng)、DJS-180系列機解釋系統(tǒng)、FORTRAN編譯系統(tǒng)移植、1750A 軍標機JOVIAL語言編譯系統(tǒng)測試等科研任務。獲部級二等獎、三等獎多次,國家二等獎一次(參加者)。主講過的課程有:“匯編程序設計”、“數(shù)據(jù)結構”、“編譯原理”等。
鄭玉山,男, 1998年起在西北工業(yè)大學計算機學院計算機軟件系任教。參與了國家“十五”優(yōu)秀教材《編譯原理》電子教材的制作及編譯原理教學網(wǎng)站建設工作。主講過軟件工程、面向對象技術、人機界面設計、管理信息系統(tǒng)等課程。參與多項科研項目研究工作,并參與編寫《面向對象技術》教材。
課程網(wǎng)址
http://202.117.80.9/jp2005/20/index.htm