国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向物聯(lián)網(wǎng)專業(yè)的編譯原理課程教學(xué)模式初探

2013-12-29 00:00:00李致遠(yuǎn)畢俊蕾
計算機(jī)教育 2013年17期

摘要:在分析近年來計算機(jī)及相關(guān)專業(yè)的編譯原理課程的教學(xué)方法和模式的改革方案的基礎(chǔ)上。提出“以編譯原理知識為體、以計算思維和工程能力為翼”的“一體兩翼式”的面向物聯(lián)網(wǎng)工程專業(yè)的新課程教學(xué)模式,闡述這種模式在編譯原理課程中的實(shí)施過程及實(shí)施效果。

關(guān)鍵詞:編譯原理;物聯(lián)網(wǎng)工程;教學(xué)模式;一體兩翼式教學(xué)

0.引言

教育部高教司于2012年初啟動實(shí)施了“十二五”專業(yè)綜合改革試點(diǎn)項(xiàng)目。江蘇大學(xué)的物聯(lián)網(wǎng)工程專業(yè)有幸得到該項(xiàng)目的資助,并于2012年的下半年啟動。該試點(diǎn)專業(yè)建設(shè)的基本出發(fā)點(diǎn)包括辦學(xué)定位、學(xué)科特色和服務(wù)面向3個方面。在辦學(xué)定位方面,主要是培養(yǎng)兼具“計算思維”和“工程能力”的物聯(lián)網(wǎng)專業(yè)卓越人才;在學(xué)科特色方面,主要是以優(yōu)勢學(xué)科支持物聯(lián)網(wǎng)專業(yè)跨學(xué)科人才的培養(yǎng);在服務(wù)面向方面,主要是面向長三角地區(qū)經(jīng)濟(jì)發(fā)展中行業(yè)物聯(lián)網(wǎng)人才的需求。為了響應(yīng)教育部“十二五”專業(yè)綜合改革的號召,并緊跟江蘇大學(xué)物聯(lián)網(wǎng)工程專業(yè)綜合改革的步伐,筆者將探索面向物聯(lián)網(wǎng)工程專業(yè)的編譯原理課程教學(xué)新模式,即一體兩翼模式。

一體兩翼教學(xué)模式是指給物聯(lián)網(wǎng)專業(yè)人才裝上“計算思維”和“工程能力”這一對有力的翅膀,使他們向“卓越”飛翔。多年來我國的教學(xué)和工程實(shí)踐均表明,項(xiàng)目應(yīng)用中的“工程能力”和創(chuàng)新解決問題的“思維能力”,是卓越人才必須依賴的一對翅膀。翅膀的深度和廣度將決定人才離開學(xué)校后發(fā)展的高度。因此,此次面向物聯(lián)網(wǎng)工程專業(yè)的編譯原理課程教學(xué)新模式的初探,就是要從實(shí)踐中摸索一套以“編譯原理專業(yè)知識為體、以計算思維和工程能力為翼”的“一體兩翼式”編譯原理課程教學(xué)新模式。

1.研究現(xiàn)狀

近年來,國內(nèi)外各大學(xué)從編譯原理課程的教學(xué)內(nèi)容、教學(xué)方式、教學(xué)手段以及實(shí)踐教學(xué)環(huán)節(jié)制訂等多個方面對這門理論性和工程性較強(qiáng)的課程進(jìn)行深入的研究和探討,并發(fā)表了大量的教改論文。

以加州Berkeley大學(xué)和佐治亞理工學(xué)院為代表的國內(nèi)外計算機(jī)領(lǐng)域?qū)<液蛯W(xué)者對編譯原理課程改革這一問題進(jìn)行了深入思考,并提出了一系列的教學(xué)改革方案,歸納起來有以下3點(diǎn):

(1)明確了編譯原理課程教學(xué)對象的變化,即從面向編譯器設(shè)計專家轉(zhuǎn)變?yōu)槊嫦蛞话阈攒浖<摇erkeley大學(xué)的Rastislav Bodik在文獻(xiàn)中明確表示,編譯原理課程的教學(xué)內(nèi)容已經(jīng)從主要集中于后端優(yōu)化等最新技術(shù),向更加重視前端分析器設(shè)計的方向轉(zhuǎn)變。

(2)設(shè)計新型的實(shí)驗(yàn)型編譯器和小型語言,以盡量滿足不同領(lǐng)域教學(xué)對象的需求。如采用DSL等專用語言,以提高學(xué)生對編譯實(shí)際應(yīng)用的理解與動手能力。

(3)基于云平臺完成編譯課程的實(shí)驗(yàn)和課程設(shè)計。這種方法使學(xué)生不再受開放環(huán)境、上機(jī)時間和地點(diǎn)的限制,可以更方便快捷地掌握編譯技術(shù)的內(nèi)容,并極大地提高學(xué)生的工程能力。

此外,國內(nèi)編譯原理課程的權(quán)威專家何炎祥教授提出了基于人本主義的教學(xué)新模式,是以學(xué)生為主、師生互動的全新教學(xué)模式,即明確指出教師的任務(wù)不是教學(xué)生學(xué)習(xí)知識,也不是教學(xué)生如何學(xué)習(xí),而是為學(xué)生提供各種學(xué)習(xí)資源,提供一種促進(jìn)學(xué)習(xí)的氣氛,讓學(xué)生自己決定如何學(xué)習(xí)。王強(qiáng)提出形象化的教學(xué)方法,即通過多媒體的形式向?qū)W生演示復(fù)雜的算法過程。徐振強(qiáng)提出研討式教學(xué)模式,這種教學(xué)模式注重師生互動和主動學(xué)習(xí)。衷璐潔以引導(dǎo)式、實(shí)例化的真實(shí)業(yè)界編譯器GCC來開展教學(xué)。該教學(xué)模式是一種與“概念-理論-應(yīng)用”的傳統(tǒng)教學(xué)模式完全相反的教學(xué)模式,它的教學(xué)思路是“案例一理論一概念”。柴艷妹提出除了具備必要的知識與信息獲取能力、基本學(xué)科能力和團(tuán)隊合作能力外,通過編譯原理課程的教學(xué)還應(yīng)鍛煉學(xué)生的抽象、發(fā)散、創(chuàng)新思維及動手能力。

通過跟蹤最新的國內(nèi)外有關(guān)編譯技術(shù)教學(xué)改革的成果,發(fā)現(xiàn)當(dāng)前的教學(xué)方法、教學(xué)理論以及教學(xué)模式的改革所采用的方法和手段不具有針對性,上述方法和手段同樣適用于其他學(xué)科,包括文科專業(yè)。鑒于此,如何針對物聯(lián)網(wǎng)工程專業(yè)人才的培養(yǎng)目標(biāo),為其量體裁衣,提出有針對性的、目的性較強(qiáng)的編譯原理課程教學(xué)方法和教學(xué)模式的改革思路是具有挑戰(zhàn)性的課題。

要想真正理清編譯原理課程在物聯(lián)網(wǎng)工程專業(yè)教學(xué)中的位置和需要進(jìn)行的改革,必須尋找高水平物聯(lián)網(wǎng)工程專業(yè)人才培養(yǎng)的客觀規(guī)律,并據(jù)此對現(xiàn)有的編譯原理課程的目標(biāo)、內(nèi)容和方法進(jìn)行創(chuàng)新和完善。下面以此為線索,對編譯課程的“一體兩翼式”創(chuàng)新教學(xué)體系結(jié)構(gòu)進(jìn)行探討和思考。

2.一體兩翼式的教學(xué)模式

面向物聯(lián)網(wǎng)工程專業(yè)的編譯原理課程一體兩翼教學(xué)模式體系結(jié)構(gòu)見圖1。以培養(yǎng)物聯(lián)網(wǎng)工程專業(yè)人才為目標(biāo),圍繞這個需求和目標(biāo)設(shè)計編譯原理課程的一體兩翼教學(xué)新模式。那么,面向物聯(lián)網(wǎng)工程專業(yè)的編譯原理課程教學(xué)新模式就是“一體兩翼”教學(xué)體系結(jié)構(gòu)的主體,而計算思維和工程能力就是該體系結(jié)構(gòu)的兩翼。在編譯原理課程中,培養(yǎng)學(xué)生計算思維的核心是喬姆斯基在1959年提出的形式語言與自動機(jī),其中包括形式語言的基本概念(元語言、符號串和產(chǎn)生式等)、形式語言的描述(巴科斯范式、文法和語義等)及其識別系統(tǒng)——自動機(jī)(有窮自動機(jī)、下推自動機(jī)和圖靈機(jī)等);培養(yǎng)學(xué)生工程能力的核心內(nèi)容是設(shè)計與實(shí)現(xiàn)嵌入型的小型編譯器,比如在傳感器節(jié)點(diǎn)上設(shè)計與實(shí)現(xiàn)基于nesC語言的小型編譯器。

在該體系結(jié)構(gòu)中,計算思維和工程能力這對有力的翅膀決定了學(xué)生通過編譯原理課程的學(xué)習(xí)到底能飛多高、飛多遠(yuǎn),同時也決定了此次編譯原理教學(xué)模式改革的成敗。要特別說明的是,計算思維和工程能力這對翅膀不是相互獨(dú)立的,而是相互依賴、相互支撐的關(guān)系,缺一不可。僅掌握計算思維,而不具備工程能力的學(xué)生在就業(yè)和升學(xué)時,會被冠以動手能力不強(qiáng)而被企業(yè)和高校面試所淘汰;僅具備簡單的編碼能力,而不具備計算思維的學(xué)生,在整個金字塔式的產(chǎn)業(yè)鏈中,永遠(yuǎn)只能做最底層的碼農(nóng),沒有上升的空間。因此,如何通過編譯原理課程的改革使學(xué)生擁有這對有力的翅膀是本次教學(xué)改革成敗的關(guān)鍵。

3.一體兩翼式教學(xué)在編譯原理課程中的實(shí)施

3.1一體兩翼在理論教學(xué)中的實(shí)施

在理論教學(xué)環(huán)節(jié),一體兩翼式教學(xué)模式的重點(diǎn)在于培養(yǎng)學(xué)生的計算思維能力。掌握這種技能的學(xué)生通常能夠解決工程中遇到的實(shí)際技術(shù)難題。具體實(shí)施策略如下:

1)“1-3-4-2”課堂組織形式。

在我們看來,教學(xué)不僅是教師的舞臺,同時也是學(xué)生學(xué)習(xí)知識、提高技能并展現(xiàn)自我的舞臺。因此,提出“1-3-4-2”課堂組織形式,它指的是課堂教學(xué)時間的分配及在該階段時間內(nèi)教師和學(xué)生應(yīng)該共同完成的授課和學(xué)習(xí)任務(wù)。其中,“1”指復(fù)習(xí)上次課所學(xué)內(nèi)容的時間,以50分鐘的授課時間為例,大約就是5分鐘。在這5分鐘的時間里,選2-3位學(xué)生回答上次課程所講述內(nèi)容的相關(guān)問題,主要目的是幫助學(xué)生回憶上次課程所學(xué)內(nèi)容,把握學(xué)生對課程所學(xué)內(nèi)容的掌握情況;“3”指留給學(xué)生在本次授課過程中要學(xué)內(nèi)容的預(yù)習(xí)時間,大約15分鐘。在這15分鐘內(nèi),學(xué)生要按照教師的要求完成對本次授課內(nèi)容的自學(xué),以達(dá)到熟悉本次課程內(nèi)容要用到的符號系統(tǒng),并提高自學(xué)能力的效果;“4”指教師的授課時間,用于講述本次課程的重難點(diǎn),大約20分鐘。在這段時間內(nèi),學(xué)生可以重點(diǎn)學(xué)習(xí)自己在預(yù)習(xí)時看不明白的地方,學(xué)生學(xué)習(xí)和教師授課都更具針對性;“2”指學(xué)生和教師的探討時間、學(xué)生的練習(xí)時間及答疑時間,大約10分鐘。在這10分鐘內(nèi),主要達(dá)到所有學(xué)生當(dāng)堂問題當(dāng)堂解決的效果。

2)綜合運(yùn)用多元授課方式。

針對編譯原理課程在不同階段的不同授課內(nèi)容,綜合運(yùn)用多元授課方式,包括實(shí)例化教學(xué)、演示教學(xué)、啟發(fā)式教學(xué)及任務(wù)驅(qū)動教學(xué)。下面逐一進(jìn)行說明。

(1)實(shí)例化教學(xué):源于哈佛大學(xué)的案例教學(xué)法,其含義是采用與傳統(tǒng)教學(xué)的“概念一理論一應(yīng)用”模式完全相反的教學(xué)模式,即“案例一理論一概念”的模式。由于LR(0)和SLR(1)語法分析器的算法描述比較抽象,按照傳統(tǒng)的教學(xué)方法,初學(xué)者往往有聽天書的感覺,同時,教師授課也同樣困難,鑒于此,我們就采用了實(shí)例化教學(xué)方法。首先拋開抽象的概念和理論,在學(xué)生已掌握有限自動機(jī)這一知識的基礎(chǔ)上,用通俗的語言和動畫演示的方法講述拓廣文法的生成、活前綴自動機(jī)的構(gòu)造、SLR(1)分析表的生成及如何使用分析表來分析一個句子是否符合語言的語法。之后,在學(xué)生具備了感性認(rèn)識的基礎(chǔ)上,開始講述“項(xiàng)目”、“活前綴”、項(xiàng)目集的閉包、GO狀態(tài)函數(shù)這些抽象的概念。最后,講述構(gòu)造SLR(1)分析表的算法。

(2)演示教學(xué):是一種直觀的教學(xué)方法,主要用于建立學(xué)生的感性認(rèn)知和對抽象理論可行性的感知。該方法通常用在抽象難懂內(nèi)容的授課中。在這里,我們將PPT的演示動畫和事先編寫好的編譯系統(tǒng)作為演示的內(nèi)容,通常將其穿插在授課之始和之末。把這段演示內(nèi)容放在授課之始,目的是建立學(xué)生的感性認(rèn)知,看得見摸得著的東西往往比抽象理論的講解更容易引起學(xué)生的興趣,激發(fā)他們學(xué)習(xí)本次課程的內(nèi)在動力,這一點(diǎn)是非常重要的;把這段演示內(nèi)容放在授課之末,目的是在學(xué)習(xí)完抽象的理論后,給學(xué)生以信心,告訴他們這些理論并不是空洞的、無用的,而是實(shí)實(shí)在在可行、可實(shí)現(xiàn)的。圖2所示是一個簡單的編譯演示系統(tǒng),包括詞法分析、語法分析、語義分析和中間代碼生成等功能。而圖3是圖2中IF條件語句的詞法分析結(jié)果。

(3)啟發(fā)式教學(xué):此教學(xué)方法在強(qiáng)調(diào)傳授知識的同時重視學(xué)生能力的培養(yǎng)及非智力因素的發(fā)展。它把學(xué)生真正置于主動者位置,充分調(diào)動學(xué)生的積極性,激發(fā)學(xué)生的內(nèi)在動力。由于本課程理論性較強(qiáng),概念原理較多,所以充分激發(fā)學(xué)生的積極性顯得尤為重要。這里仍以自底向上的LR語法分析為例進(jìn)行說明。LR語法分析包括LR(0)、SLR(1)、LR(1)以及LALR語法分析方法。若教師不加區(qū)分、割裂地去講述上述內(nèi)容,會給學(xué)生的學(xué)習(xí)帶來額外的負(fù)擔(dān)。其中上述內(nèi)容之間的關(guān)系緊密,這里可以采用啟發(fā)式教學(xué)方法,即首先詳細(xì)地講述LR(0)分析方法,因?yàn)樗瞧渌鸏R語法分析方法的基礎(chǔ)。然后,舉一個算術(shù)表達(dá)式文法的例子,讓學(xué)生用LR(0)分析方法對其進(jìn)行分析,結(jié)果學(xué)生會發(fā)現(xiàn)自己所構(gòu)造的LR(0)分析表存在沖突。這就迫使他們主動尋求解決該沖突的方案。此時,在教師的指導(dǎo)下,學(xué)生發(fā)現(xiàn)用求非終結(jié)符的集和集的方法可以解決LR(0)分析表構(gòu)造中存在的沖突問題。這樣,便掌握了SLR(1)語法分析方法。之后,按照這種方式,學(xué)生可以輕松地掌握LR(1)及LALR語法分析方法。

(4)任務(wù)驅(qū)動教學(xué):是將要學(xué)習(xí)的新知識隱含在一個或幾個任務(wù)中,學(xué)生通過對任務(wù)進(jìn)行分析、討論,明確涉及的知識,并找出新知識,然后在教師的指導(dǎo)幫助下找出解決問題的方法,在完成任務(wù)的同時培養(yǎng)學(xué)生分析問題、解決問題的能力。在“語義分析和中間代碼生成”章節(jié)的講述中,我們采用了任務(wù)驅(qū)動教學(xué)。這是因?yàn)檎Z義分析不像詞法分析和語法分析那樣可以分別用正規(guī)文法和上下文無關(guān)文法描述。語義是上下文有關(guān)的,因此語義的形式化描述是非常困難的。以這一挑戰(zhàn)問題為任務(wù),引導(dǎo)學(xué)生找出解決語義分析的方案,即利用語法制導(dǎo)翻譯來實(shí)現(xiàn)語義分析。這種語義分析方法首先為每個產(chǎn)生式添加語義動作,即語義子程序。然后,在語法分析的同時,同步調(diào)用語義子程序,那么,在完成語法分析時,也就實(shí)現(xiàn)了語義分析。這種方法避免了對語義進(jìn)行形式化描述這一難題,在已有成熟方法和理論的基礎(chǔ)上,通過擴(kuò)展語義棧,巧妙地解決了該技術(shù)難題。

3.2一體兩翼在實(shí)踐教學(xué)中的實(shí)施

實(shí)踐教學(xué)環(huán)節(jié),一體兩翼教學(xué)模式的重點(diǎn)在于培養(yǎng)學(xué)生的工程實(shí)踐能力。掌握這種技能的學(xué)生通常能夠?qū)⒛P娃D(zhuǎn)換成系統(tǒng),完成系統(tǒng)的落地。具體實(shí)施策略如下:

1)上機(jī)實(shí)驗(yàn)。

結(jié)合理論教學(xué),在學(xué)習(xí)相關(guān)章節(jié)的理論內(nèi)容后,即可進(jìn)行上機(jī)實(shí)驗(yàn)。例如,在完成詞法分析章節(jié)內(nèi)容的學(xué)習(xí)后,即可讓學(xué)生進(jìn)行詞法分析的上機(jī)實(shí)驗(yàn)。實(shí)驗(yàn)內(nèi)容設(shè)置應(yīng)與課堂教學(xué)內(nèi)容一致,實(shí)驗(yàn)?zāi)繕?biāo)明確,并給出具體的測試用例和實(shí)驗(yàn)結(jié)果供學(xué)生參考。

2)課程設(shè)計。

課程設(shè)計的目的是讓學(xué)生在完成設(shè)計的同時,加深對所學(xué)內(nèi)容的理解深度,提高動手實(shí)踐能力。課程設(shè)計的內(nèi)容涵蓋詞法分析、語法分析、語義分析與中間代碼生成、代碼優(yōu)化、符號表與錯誤處理等內(nèi)容。區(qū)別于其他計算機(jī)專業(yè)的編譯原理課程設(shè)計,我們采用面向無線傳感器節(jié)點(diǎn)的通用編程語言nesC作為嵌入型編譯器的開發(fā)語言實(shí)現(xiàn)上述功能。鑒于傳感器節(jié)點(diǎn)的資源有限,我們首先在計算機(jī)上建立交叉編譯環(huán)境,然后在交叉編譯環(huán)境下完成基于nesC的編譯器開發(fā)。之后,將編譯成功的代碼移植到Mica2傳感器節(jié)點(diǎn)上。最后,再在Mica2傳感器節(jié)點(diǎn)實(shí)現(xiàn)其上層應(yīng)用系統(tǒng)的編譯。

4.教學(xué)改革成效

我們對2011級物聯(lián)網(wǎng)專業(yè)本科學(xué)生運(yùn)用了一體兩翼教學(xué)法。在課程結(jié)束后,讓49名學(xué)生在網(wǎng)上進(jìn)行了匿名的教學(xué)質(zhì)量評價,結(jié)果表明一體兩翼教學(xué)法教學(xué)效果明顯好于傳統(tǒng)的按章節(jié)授課的單一教學(xué)模式。表1所示是從授課內(nèi)容條理清晰、重點(diǎn)突出、課堂氣氛活躍、教學(xué)內(nèi)容充實(shí)、能夠激發(fā)學(xué)生興趣、啟迪學(xué)生思維、授課內(nèi)容能夠?qū)崿F(xiàn)理論聯(lián)系實(shí)際、培養(yǎng)學(xué)生綜合能力等方面進(jìn)行的教學(xué)效果對比分析,其中的數(shù)據(jù)來源于江蘇大學(xué)教務(wù)管理系統(tǒng)。

通過對表1中的數(shù)據(jù)進(jìn)行對比分析可知,一體兩翼教學(xué)模式在各方面都明顯優(yōu)于傳統(tǒng)的單一教學(xué)模式,特別是在激發(fā)興趣、啟迪學(xué)生思維、培養(yǎng)學(xué)生理論聯(lián)系實(shí)際的能力、計算思維能力和工程能力方面,93%以上的學(xué)生都表示滿意。

5.結(jié)語

筆者針對物聯(lián)網(wǎng)專業(yè)人才的培養(yǎng)需求,提出基于一體兩翼新教學(xué)模式的編譯原理課程改革方案。一體兩翼新教學(xué)模式重在激發(fā)學(xué)生的興趣。培養(yǎng)學(xué)生理論聯(lián)系實(shí)際的能力、計算思維能力和工程實(shí)踐能力。通過匿名式的網(wǎng)上問卷調(diào)查發(fā)現(xiàn),絕大部分學(xué)生認(rèn)同一體兩翼新教學(xué)模式更有利于他們掌握基本理論和基本技能,提高理論聯(lián)系實(shí)際及工程實(shí)踐能力的觀點(diǎn)。他們普遍反映在面對實(shí)際項(xiàng)目時,不再有手足無措之感,總能夠?qū)⒋蠖y的問題分解為多個可以實(shí)現(xiàn)的小問題,并將其一一擊破。教師們也普遍反映一體兩翼新教學(xué)模式使教學(xué)質(zhì)量和教學(xué)效果有了明顯的提升。匿名調(diào)查結(jié)果達(dá)到了預(yù)期目標(biāo)。

然而,通過問卷調(diào)查還發(fā)現(xiàn)編譯原理課程改革中仍存在一些問題,如講述重點(diǎn)還不夠突出等。因此,在教案中還需要加入一些通俗易懂、便于學(xué)生理解的案例作為引子。今后的工作是將教學(xué)內(nèi)容重新梳理,使得教學(xué)重難點(diǎn)更加突出。

九寨沟县| 德昌县| 奉化市| 同江市| 察隅县| 岑溪市| 古交市| 卓尼县| 滦南县| 金寨县| 巨野县| 西峡县| 万宁市| 团风县| 尤溪县| 郎溪县| 安庆市| 浏阳市| 丽水市| 霸州市| 靖边县| 平乐县| 汕尾市| 桦甸市| 宁明县| 樟树市| 乌什县| 湖口县| 波密县| 调兵山市| 元朗区| 遂平县| 曲松县| 西宁市| 梅河口市| 永胜县| 涿鹿县| 金平| 武定县| 揭东县| 普宁市|