吳年志

【摘 要】本文根據《C語言程序設計》課程傳統課堂的缺陷,結合BOPPPS模型對課程教學內容進行改革,并用移動APP教學平臺實踐,充分激發學生的學習興趣和積極性,提高實際動手能力,從而提高課堂教學效果及教學質量。
【關鍵詞】C語言程序設計;BOPPPS;移動APP教學平臺;教學改革
在以理工科為主的大學里,普遍以C語言程序設計作為大學生程序設計類入門課的教學課程,也是一門很多理工類專業必修的公共基礎課。但是多年的實際教學表明,許多學生對《C語言程序設計》的學習興趣和積極性不高,課堂教學效果差。如何提高課堂教學效果,是一個切實亟待解決的問題。
一、傳統課堂教學模式的缺陷
傳統教學模式是按部就班,根據教學大綱及教學計劃,在教室里按照預設教案講授,以“教師”為中心,學生被動接受。教師主要的目的就是傳授知識,忽視了學生的參與,也忽視了學生的感受。《C語言程序設計》是一門邏輯性強,知識一環套一環,并且C語言語法要求嚴格,如果課堂上學生只是單純被動的接受,很難體會到C語言的這些特點,也很難動手寫程序。因為在這種模式下,教師是主動者,支配者,學生是被動者,服從者,很容易造成重教輕學,重教輕用,對學生課堂上的表現無法了解,從而導致學生學習興趣與積極性下降,從而帶來教學效果的下降。
二、BOPPPS模型介紹
BOPPPS 模型將整個課堂教學周期分為6個模塊,即導言(Bridge-in)、學習目標(Objective)、前測(Pre-assessment)、參與式學習(Participatory Learning)、后測(Post-assessment)、總結(Summary)。該模型以“學”為中心,強調學生在教學過程中的主導地位,突出參與式學習,幫助教師分解教學過程、找到教學盲點、改善并提升教學成效。在該模型中,將教和學有效地融為一體,在課堂教學過程中表現出很強的節奏性和操作性,同時對改進教師的教學方式也有很好的指導作用。C語言概念比較抽象,對語法要求嚴格,每個知識點的學習效果、學生所掌握的思維能力和實踐能力最終都要體現到程序的實現上,需要理論與實踐緊密結合。通過BOPPPS模型,各知識點通過層次結構得以清晰顯示,學習目標更加明確,整個教學過程可操控性更強。
三、基于BOPPPS模塊的C語言教學改革和實踐
以BOPPPS模型為基礎框架,并結合學習通App的移動教學平臺,將參與式教學應用到課堂學習中,具體要做到以下兩點:
(一)基于BOPPPS模塊的教學內容設計
根據BOPPPS模型的6個模塊,對于每堂45分鐘的教學課堂,務必做好上課前的BOPPPS教學內容流程設計。在每堂課程上課前,教師要認真對每堂課45分鐘的教學內容按照BOPPPS模塊的要求做精心的設計,這樣才能保證教學效果。本文以《C語言程序設計》中的“選擇結構程序設計”的第一次課的教學內容設計如表1所示:
需要說明的是:所有的教學設計都必須圍繞學習目標來設計,時間可以根據上課實際情況來靈活掌握。
(二)基于BOPPPS模塊的實際教學
做好設計以后,就要做好實際教學。需要注意的,上課前,務必在學習通APP上把課堂要學生參與的內容提前準備好。本文以《C語言程序設計》中的“選擇結構程序設計”的第一次課的教學內容為例說明如何做好實際教學。
(1)導言。選擇合適的手段,通過有效的方法引出本次課的教學內容來吸引學生的注意力,激發學生的興趣,并明確課程的重要性。可以采用提出問題、圖片或者視頻等方式引出課程主題。本人實際教學中首選簡要提一下上次課內容,并以超市里會員與非會員購物后費用結算的問題引出選擇結構程序設計。
(2)學習目標。學習目標達成情況是檢驗學習效果的評價標準。從學生的角度出發,明確學習意圖,明確學生在課堂結束前應該知道、思考、重視哪些內容。本人通過PPT展示本堂課程的3個目標:辨識選擇結構程序的兩個要素;能運用關系運算符進行計算;能運用邏輯運算符進行計算。
(3)前測。了解學生的學習興趣和先備知識,研究已學內容的引入方式,明確其與新知識的關系。可以采用選擇、問答等方式,確保評估內容與教學目標相呼應,同時評估學生對新知識的接受能力。本人通過設計兩個選擇結構實例來讓學生總結出選擇結構程序設計中的要素和特點,并要求學生通過學習通參與。比如,超市里會員與非會員購物后費用結算?如果判斷3個邊能否構成三角形并計算面積?通過參與學生就明白了選擇結構程序程序的兩個要素及特點。
(4)參與式教學。以該模塊為主體,課堂教學過程由課堂講授、課后(或當堂)吸收、課堂討論組成。導讀式講授環節重點在于精講和留白,教師主要講解學習目標、內容的邏輯框架、與其他知識的關聯、重難點、注意事項,但并不窮盡內容,讓學生明確學什么、如何學;在課后或者當堂給予學生一定時間,以閱讀、實際操作等方式完成學習。本人在實際教學中,結合關系運算和邏輯運算的特點,提前設計一些習題,讓學生通過學習通參與教學,然后通過投屏并點評。比如,a=0與a==0有什么差別?假如a=3,b=2,c=1,那么a>b>c的結果多少?假如a=3,b=2,c=1,那么a>b&&b>c的結果多少?等。通過這些參與,讓學生深刻的體會到C語言中關系表達式或邏輯表達式的運算特點。
(5)后測。評估學習成果并進行評價反饋。可通過判斷、簡答、展示等方式實現。考查需要鞏固的內容,同時設計內容引導學生擴展相關知識,啟發學生思考。本人根據教學目標設計了若干個問題讓學生通過學習通參與,并根據學生提交答案及時點評。比如,判斷字符ch是否是字母?判斷整數m能否被整數n整除?判斷字符ch是否是字母?等,這些問題都要學生用C語言表達式寫出。
(6)總結。讓學生簡要地反思并整合重點內容。教師可通過簡要文字展示、思維導圖、知識樹、討論分享等方法,擴展學生所學內容,同時延伸思考引出下節課的內容。本人實際教學中用大寫加粗字體展示來總結了本次課程的教學內容,并延伸出下一次的內容:在C語言中,實現結構程序設計的語句到底有哪些呢?
四、教學效果總結
經過近幾個學期近700人次的實踐教學,課堂氛圍明顯活躍,學生參與度明顯提高,學生學生對教師的滿意度明顯提高。并且由于學生課堂現場參與編程,教師及時點評,學生的學習興趣和積極性明顯提高,學生的動手能力也明顯提高,教學效果提高明顯,教學質量也明顯提高。
【參考文獻】
[1]基于移動學習的BOPPPS對分課堂教學研究與實踐.朱世敏.工業和信息化教育. 2021,(01)
[2]基于BOPPPS和PBL融合的“美味大餐”在線教學設計與實踐.計算機教育.2021,(01)
[3]BOPPPS模型及其在研究型教學中的應用探究[J].穆華,李春.陜西教育(高教). 2015(10)