王新峰,劉霜霜(.吉首大學(xué)軟件服務(wù)外包學(xué)院,張家界 47000;.湖南工業(yè)職業(yè)技術(shù)學(xué)院,長沙 4008)
研討式教學(xué)在編譯原理課程中的應(yīng)用
王新峰1,劉霜霜2
(1.吉首大學(xué)軟件服務(wù)外包學(xué)院,張家界 427000;2.湖南工業(yè)職業(yè)技術(shù)學(xué)院,長沙410208)
隨著MOOC、公開課的興起對傳統(tǒng)的教學(xué)帶了巨大的沖擊,傳統(tǒng)的教師臺上講學(xué)生臺下聽的模式弊端越來越明顯。為了對應(yīng)新環(huán)境的變化,本課程將應(yīng)用在西方發(fā)達國家高校中已取得較好成效的研討式教學(xué)。研討式教學(xué)是以解決問題為中心,通過由教師創(chuàng)設(shè)問題情境,讓學(xué)生查閱資料、獨立思考,展開課堂討論和交流,在不同觀點相互交流補充、碰撞交鋒中提出解決問題的辦法,使學(xué)生掌握知識和技能的教學(xué)方式[1]。
一門課程的教學(xué)過程有四個關(guān)鍵參與因素:教學(xué)環(huán)境、課程知識、學(xué)生、教師。通過分析在編譯原理中可以開展研討式教學(xué),具體如下:
(1)先進的配套教學(xué)環(huán)境。本學(xué)院每個學(xué)生都分配到一臺實驗計算機,且所有教室都屬于多媒體教室自帶Wi-Fi。為研討式教學(xué)過程中查找資料,PPT展示和程序演示提供了非常好的教學(xué)環(huán)境。
(2)具有合適的研討主題。編譯器的工作流程可以分為7塊:詞法分析、語法分析、語義分析、中間代碼生成、機器無關(guān)代碼優(yōu)化、目標(biāo)代碼生成、機器相關(guān)代碼優(yōu)化。不同流程之間知識相對獨立,同時編譯原理的這些理論知識與實踐結(jié)合很好。例如詞法分析,學(xué)生可以結(jié)合自己使用的C語言知識,分析討論C語言的詞法分析是怎樣實現(xiàn)的,再嘗試編寫一個類似詞法分析器。同樣的語法分析、語義分析等都可以提取出來作為研討主題。
(3)學(xué)生經(jīng)驗與知識基礎(chǔ)符合要求。編譯原理課程是大二下學(xué)期的課程,本院學(xué)生在大一就接觸過研討式教學(xué)方式對此并不陌生,經(jīng)過一年半的時間學(xué)習(xí),學(xué)生具有動手編寫程序的能力。
(4)研討式教學(xué)的最終目標(biāo)是培養(yǎng)學(xué)生獨立思考問題和解決問題的能力,對授課教師的要求較高。本門課程的教師有IT大企業(yè)的工作經(jīng)驗和教學(xué)經(jīng)驗,對編譯原理的知識有很好的理解,且能從實用性角度出發(fā)把握重點和難點。因此教師的理論教學(xué)水平、分析和解決問題的能力等滿足研討式教學(xué)的高要求。
2.1研討主題的設(shè)計
確定研討主題是研討式教學(xué)的第一步,一個好的研討主題選取要符合以下幾點:第一,涵蓋1-3個知識點,知識點太多不利于重點知識的把握。第二,考慮學(xué)生的能力和時間,學(xué)生在一周內(nèi)能自學(xué)查找資料完成。第三,具有發(fā)散性,這里發(fā)散性是指學(xué)生能用采用不同的辦法解決,這樣有利于思想的碰撞。最后,如果具有實用價值則更好,這樣就能激發(fā)起學(xué)生主動學(xué)習(xí)的興趣[2]。
根據(jù)筆者多年的開發(fā)經(jīng)驗,從實際開發(fā)需求角度和上課課時量出發(fā),確定了編譯原理需要開展研討式的知識點有:詞法分析,自頂向下語法分析,語法制導(dǎo)翻譯,中間代碼生成。并設(shè)計了相應(yīng)的研討主題,如下表1所示:
表1 研討主題表
其中語法分析是重點,需要編寫自頂向下語法分析程序,安排了2周時間。整個編譯過程是一個完整的流程,且在任意的程序編譯過程中都存在,可以選取一個簡單的C語言程序作為載體來展開研討式,代碼如下:
別看代碼簡單,但包含了整個編譯過程所有知識點,限于篇幅限制,這里僅以詞法分析為例,針對這個主題需要學(xué)生自行解決和討論的問題:
(1)代碼中怎么樣表達一個單詞。
(2)在C語言中單詞分了多少個類。
(3)如何來識別程序中的單詞
上面3個問題就包含了正則表達式、詞法單元規(guī)約、識別單詞三個知識點,解決了這3個問題學(xué)生就掌握了詞法分析這個過程。
2.2課前準(zhǔn)備
研討式教學(xué)過程中學(xué)生是主體,教師是輔導(dǎo),這種轉(zhuǎn)換過程會出現(xiàn)各種問題,如學(xué)生不知道講什么,教師在旁不會引導(dǎo)。為了達到預(yù)期的教學(xué)目標(biāo),教師需要對學(xué)生講解研討式教學(xué)的流程,之后每次研討式課前雙方需做好以下各項準(zhǔn)備。
教師需要準(zhǔn)備3個方面的工作。第一,研討課前1周將研討主題下發(fā)給研討小組,讓學(xué)生有充分的時間去了解研討課題、查找資料解決問題;第二,教學(xué)環(huán)境的準(zhǔn)備,如網(wǎng)絡(luò)、研討過程中需要的應(yīng)用軟件等;第三,教師要為研討的課題準(zhǔn)備微課件,對核心知識點以及問題解決思路進行講解。
學(xué)生需要準(zhǔn)備2方面的內(nèi)容:第一,學(xué)生隨機分組,每組人數(shù)4-5人,并選舉一個組長。第二,根據(jù)研討課題要求,每組準(zhǔn)備包括軟件、電子資料和紙質(zhì)材料等必要的研討材料。
2.3組織課堂討論
課堂討論是研討式教學(xué)的核心階段。為了做好課堂討論需要注意三點:首先教師以旁觀者身份參與其中,讓每個學(xué)生自由表達意見;其次是鼓勵學(xué)生提出不同的觀點,培養(yǎng)學(xué)生獨立思考和勇于創(chuàng)新的精神;第三是教師作為導(dǎo)師角色,需要時刻掌握研討的方向緊緊圍繞主題展開,并且要具有敏銳的洞察力,善于發(fā)現(xiàn)討論中的新問題和新思想,把最新的研究成果或者實際事件密切相關(guān)的問題融入到討論中[2],研討的流程如下:
①隨機抽取一組上臺講解他們的方案:包括PPT講解思路,源代碼展示結(jié)果。(時間10分)。
②之后進入提問討論環(huán)節(jié)(10分鐘)(注教師需要引導(dǎo),不能偏離主題)。
③一次課隨機3-4組,之后剩下10-15分鐘左右,教師講解涉及的關(guān)鍵知識點和總結(jié)。
2.4課后總結(jié)鞏固
一次課堂討論有時并不能夠很好地達到預(yù)定的教學(xué)目標(biāo),尤其是對于那些比較難或?qū)嵺`性要求較高的知識點,如自頂向下語法分析,課后必須進行總結(jié)和補充。該環(huán)節(jié)主要做2方面的事情,一是針對重點難點需要額外增加課時進行講解,課后布置對應(yīng)的練習(xí)和實驗加以鞏固;二是教師要及時總結(jié)前一次研討過程中的不足和優(yōu)點,并對下次研討活動進行調(diào)整,從而提高下次研討式教學(xué)效果。
經(jīng)過一個學(xué)期的研討式教學(xué)嘗試,取得了一些成果,如學(xué)生主動分析問題和搜索資料的能力大大提升,但也出現(xiàn)了一些問題。第一,部分學(xué)生不假思索照搬照抄網(wǎng)絡(luò)信息,弱化了資料分析和處理的能力,針對該現(xiàn)象,應(yīng)該指導(dǎo)學(xué)生進行信息的選取、過濾和應(yīng)用的教育[3]。第二,出現(xiàn)了“抱大腳”現(xiàn)象,當(dāng)一個組內(nèi)有一個人能力較強時,其他學(xué)生會不假思索采用此學(xué)生的解決辦法,不利于后進生成長;第三,研討式教學(xué)模式對教師要求很高,不同學(xué)生在網(wǎng)絡(luò)上搜索問題答案時,會得到不同的解決辦法。當(dāng)學(xué)生在討論過程中提出時,如果教師沒有準(zhǔn)備就會讓學(xué)生難到,也解決不了學(xué)生的疑問。
研討式教學(xué)模式從西方國家引入到中國高校取得了一定的效果,也得到各高校的重視,證明了它是一種培養(yǎng)人才的有效教學(xué)模式。但應(yīng)用這種模式過程中,也出現(xiàn)了一些不適應(yīng)“癥狀“:班級學(xué)生人數(shù)太多,組織課堂討論難度大;學(xué)生適應(yīng)上課自由討論的方式需要時間;對課程知識結(jié)構(gòu)和教師能力都有一定的要求;因此在教學(xué)實踐中,應(yīng)視情況開展研討式教學(xué)。
[1]覃遵躍,周清平.研討式教學(xué)在Java語言課程中的應(yīng)用[J].計算機教育,2014(18):55-58.
[2]王新峰,覃遵躍,郭鑫.研討式教學(xué)在C語言課程中的應(yīng)用[J].課程教育研究2015(3).
[3]田管鳳,秦懷泉.研討式教學(xué)模式探索和實踐[J].東莞理工學(xué)院學(xué)報,2013(2):114-117.
Compiler Theory;Seminar-Style;Teaching Reformation
Application of Seminar Teaching in Compiler Principle Course
WANG Xin-feng1,LIU Shuang-shuang2
(1.Jishou University Software Services Outsourcing,Zhangjiajie427000;2.Hunan Industry Polytechnic,Changsha 410208)
1007-1423(2016)06-0071-03
10.3969/j.issn.1007-1423.2016.06.017
王新峰(1986-),男,江西九江人,碩士研究生,助教,研究方向為嵌入式系統(tǒng)設(shè)計
2015-12-08
2016-02-12
為了提高編譯原理教學(xué)效果,嘗試將研討式教學(xué)模式應(yīng)用到編譯原理課程中,并詳細闡述實施研討式教學(xué)的4個步驟:確定研討主題、課前準(zhǔn)備、課堂討論、課后總結(jié)。
編譯原理;研討式;教學(xué)改革
劉霜霜(1982-),女,湖北隨州人,講師,研究方向:計算機網(wǎng)絡(luò)、物聯(lián)網(wǎng)
In order to improve teaching effectiveness compiler theory,attempts to discuss teaching model applied to compiler theory courses,and e鄄laborates four steps to implement of discuss teaching:determining research topics,class preparation,class discussion,after-school summa鄄ry.