劉志鋒, 魏振華, 蔣年德, 王紅玲, 徐 瑋
(東華理工大學軟件學院,江西南昌330013)
培養(yǎng)能滿足社會需要,具備動手實踐能力和自主創(chuàng)新能力的軟件工程專業(yè)應(yīng)用型人才是大學計算機教育的首要目標[1]。C/C++語言程序設(shè)計作為計算機相關(guān)專業(yè)入門級的核心專業(yè)基礎(chǔ)編程課程,是實踐性和工程性極強的應(yīng)用型課程,改進實踐教學環(huán)節(jié),是提高其教學質(zhì)量的必經(jīng)之路。
立體化教學可以將理論教學、實驗教學與課程設(shè)計等實踐環(huán)節(jié)有機結(jié)合,提供一種教學資源的整體解決方案[2],將有效的空間和時間交給學生,突出個性化培養(yǎng)和能力發(fā)展。同時,“富有激情和挑戰(zhàn)”是當代大學生擁有的一個最大特點,基于“闖關(guān)游戲式”的實踐教學方式,讓學生體驗到好似游戲中的樂趣,顛覆“被學習”角色,主動接受“闖關(guān)式”挑戰(zhàn),對于提高學生積極性、自覺性和創(chuàng)新性有重要意義。
實踐教學是鞏固理論知識的有效途徑,是培養(yǎng)具有創(chuàng)新意識的高素質(zhì)工程技術(shù)人員的重要環(huán)節(jié),是培養(yǎng)學生掌握科學方法和提高動手能力的重要平臺。
C/C++語言程序設(shè)計是計算機相關(guān)專業(yè)學生的一門重要的編程基礎(chǔ)課程,作為一門高級程序設(shè)計語言,以其使用廣泛、表達能力強、目標代碼運行效率高、可移植性好,既可以用來編寫系統(tǒng)軟件,又可以用來編寫應(yīng)用軟件的特點,在計算機教學中具有重要地位[3]。
該課程是一門實踐性和應(yīng)用性很強的課程,主要目標是培養(yǎng)學生熟練運用、編寫程序的能力。實踐教學就是讓學生有學習和練習編程的機會,是保障語言類課程教學效果的重要環(huán)節(jié),主要有實驗教學、綜合性的課程實習以及課程設(shè)計等。
立體化教學在教學對象層次化、教學內(nèi)容模塊化、教學案例課題化、教學空間網(wǎng)絡(luò)化、教學手段現(xiàn)場化等方面具有突出的特點,能夠滿足培養(yǎng)創(chuàng)新型人才的需要,對改善C/C++語言程序設(shè)計課程教學效果,提高學生編程能力有重要意義。
立體化教學環(huán)境提供充分的空間和機會,讓學習者去構(gòu)建自己的知識體系,有利于學生實踐能力和自學能力的培養(yǎng)[4]。
教學對象層次化:針對不同層次水平的學生,包括二本學生,三本學生,高職學生等,采用不同的難度系數(shù)以實現(xiàn)不同的教學目標;
教學內(nèi)容模塊化:按照章節(jié)和主題內(nèi)容,劃分教學模塊,分別建立教學資源和試題庫;
教學案例課題化:將不同的知識點貫穿到同一個教學案例中,從始至終不斷豐富和完善,最終課程完畢時將形成一個軟件作品;
教學空間網(wǎng)絡(luò)化:通信技術(shù)和網(wǎng)絡(luò)環(huán)境的不斷成熟,從而實現(xiàn)各種教學資源、考勤考核、教學評價等信息化和網(wǎng)絡(luò)化,尤其是實踐教學的網(wǎng)絡(luò)化,打破時間和空間的限制,提高了實訓(xùn)的效率和質(zhì)量;
教學手段現(xiàn)場化:從日常上機練習到綜合性的課程設(shè)計以及上機考核,都在集成的一體化現(xiàn)場網(wǎng)絡(luò)環(huán)境完成,實現(xiàn)自主學習、練習、指導(dǎo)答疑、考試現(xiàn)場化;
教學資源立體化:紙質(zhì)教材—學習輔助光盤—網(wǎng)絡(luò)學習平臺—實驗平臺,呈現(xiàn)一個多元立體的教學資源體系。
建構(gòu)主義理論的核心是以學生為中心,強調(diào)學生對知識的主動探索、主動發(fā)現(xiàn)和對所學知識意義的主動構(gòu)建[5]。教師要成為學生建構(gòu)意義的幫助者,首要的是激發(fā)學生的學習興趣,幫助學生形成學習動機?!案吲d學來的東西永不會忘”,這句名言也充分說明了主動的學習是快樂的,也是有效率的。
游戲體驗使學習富有創(chuàng)意,易于激起學生的探索愿望[6]。學生在闖關(guān)游戲中可以時刻保持競技狀態(tài),對游戲過程中的失誤印象深刻,易于激發(fā)學生學習的動力,并注意在課堂上主動吸收相關(guān)知識點,以便應(yīng)對下一次的挑戰(zhàn)。因此闖關(guān)游戲思想符合建構(gòu)主義理論的思想和要求。
同時,建構(gòu)主義所要求的學習環(huán)境得到了當代最新信息技術(shù)成果的強有力支持,使得在C/C++語言程序設(shè)計課程實踐教學過程中,采用闖關(guān)游戲式網(wǎng)絡(luò)教學平臺成為可能。研究并設(shè)計過關(guān)難度等級,以及相應(yīng)的題庫設(shè)計和學生參與做題游戲的互動形式,使學生通過類似過關(guān)游戲的交互體驗,將知識最大化地體現(xiàn)出來,從而實現(xiàn)理想的教學效果[7]。
闖關(guān)游戲思想的應(yīng)用分為兩個層次:游戲的形式和闖關(guān)的內(nèi)容。游戲的形式指學生在闖關(guān)過程中,像玩網(wǎng)絡(luò)游戲般獲取經(jīng)驗值、學習過關(guān)秘笈、進入下一關(guān)直至過關(guān)成功或者生命耗盡。闖關(guān)的內(nèi)容指在闖關(guān)過程中,教師或者學生可以根據(jù)實際的學習情況,設(shè)置闖關(guān)的難度系數(shù),從而在題庫里讀取相應(yīng)關(guān)卡的題目。
C/C++闖關(guān)式立體化實踐教學過程設(shè)計主要分為三個階段,如圖1所示。
圖1 闖關(guān)式立體化實踐教學過程
第一階段:自主學習。在該階段,學生通過章節(jié)練習,遇到問題可以查看老師提供的通關(guān)寶典,在練習過程中不斷積累自己的生命值,當生命值大于等于60時,可以進入下一個模擬測驗階段。
第二階段:模擬測驗。在該階段,學生自己設(shè)定目標,在規(guī)定的時間內(nèi),完成模擬題目。在此過程中,時刻都檢測生命值是否小于60,身臨其境地體驗闖關(guān)游戲式的驚險和刺激。受挫遇阻可以查看闖關(guān)秘笈,通過在錯誤中學習加深學習效果。
第三階段:在線考試。在該階段,教師組織同學們在統(tǒng)一的時間地點,完成在線考試。通過前兩個階段的積累,同學們在此過程中,內(nèi)心充滿對考試過程的期待,因為已經(jīng)有過闖關(guān)游戲體驗,這是證明自己的關(guān)鍵時刻。在線考試過程同樣以闖關(guān)游戲形式開展,最終考試完畢同學們可以在排行榜上查看自己的成績。
(1)題庫建設(shè)。題庫的建設(shè)是一個循環(huán)持續(xù)積累的過程,如圖2所示。上屆學生給出老師要求的題目,教師匯總題目,并將這些題目作為同學們的習題集,進行練習和自測;教師根據(jù)同學們的做題結(jié)果對一系列的題目進行難度評估,劃分難度系數(shù),并對題目按照知識點提供秘笈,并導(dǎo)入到已有題庫;下屆學生的實踐教學環(huán)節(jié)將按照教學設(shè)計的三個階段進行闖關(guān)式體驗,根據(jù)同學們的闖關(guān)結(jié)果對題目難度系數(shù)適當調(diào)整。當下屆學生成為上屆學生后,重復(fù)這個過程,不斷修正和補充題庫,實現(xiàn)題庫的擴展和更新。同時,該闖關(guān)平臺不僅支持C/C++題庫,也可建立其它科目的題庫,從而擴大該平臺應(yīng)用范圍。
圖2 題庫建設(shè)過程
(2)平臺建設(shè)。該闖關(guān)實踐教學平臺共分為三個角色,即管理員、教師、學生,不同角色登陸系統(tǒng)具有不同的功能模塊劃分,如圖3所示。
圖3 闖關(guān)式實踐教學平臺功能結(jié)構(gòu)圖
通過該功能模塊圖可以看出,管理員角色具有題庫管理(導(dǎo)入,導(dǎo)出)、通關(guān)寶典管理、闖關(guān)秘笈管理等功能,主要提供題庫及其對應(yīng)難度系數(shù)題目的闖關(guān)秘笈;教師角色具有系統(tǒng)設(shè)置(難度,題型和題量,考試時間,生命值)、成績管理等功能,主要實現(xiàn)在線考試題目的各種狀態(tài)設(shè)置以及對學生的考試結(jié)果進行管理和分析;學生角色具有使用方式(自主學習,模擬測驗,在線考試)、系統(tǒng)設(shè)置(難度,題型和題量,測驗時間)、抽題、查看(通關(guān)寶典,闖關(guān)秘笈,生命值)、錯題庫管理、排行榜等功能,主要實現(xiàn)自主學習、模擬測驗和在線考試三個階段所需的各種設(shè)置和闖關(guān)過程。
(3)闖關(guān)式實踐教學過程。第一階段:自主學習流程如圖4所示。學生進入實踐教學平臺,使用方式選擇自主學習。然后進行系統(tǒng)設(shè)置,包括難度系統(tǒng)、題目結(jié)構(gòu)和測驗時間,之后進入闖關(guān)過程,積累生命值。
圖4 自主學習流程
第二階段:模擬測驗流程如圖5所示。學生進入實踐教學平臺,使用方式選擇模擬測驗。如果生命值低于60,是不能闖關(guān)的,反之則可進行系統(tǒng)設(shè)置,包括難度系統(tǒng)、題目結(jié)構(gòu)和測驗時間,然后開始闖關(guān)。闖關(guān)過程中時刻監(jiān)測生命值是否低于60,決定是闖關(guān)失敗還是進入下一題繼續(xù)闖關(guān)直至最后一題。如果做完所有題目,生命值不低于60,則闖關(guān)成功。
圖5 模擬測驗流程
第三階段:在線考試流程。該過程與模擬測驗流程的唯一一點區(qū)別是:在線考試是由教師統(tǒng)一設(shè)置,學生不能單獨進行設(shè)置包括難度,題型和題量,時間,生命值等。其他過程和模擬測驗相同。
本文提出的基于闖關(guān)游戲式的實踐教學方式,通過實踐教學過程,產(chǎn)生的教學效果如表1所示(C語言為大一第一學期開設(shè)課程、C++為大一第二學期開設(shè)課程),針對四項評價標準(學習興趣、師生交流、動手能力、平均成績)進行了比對,結(jié)果表明,采用闖關(guān)游戲法與傳統(tǒng)教學法相比,學生學習興趣更濃、師生互動更頻繁、學生動手能力和自主學習能力更強、平均成績有近10分的提升幅度。
表1 教學效果對比表
基于闖關(guān)游戲式的實踐教學方式,可通過闖關(guān)式教學平臺實現(xiàn)自動人機交互,讓學生以一種游戲挑戰(zhàn)的心態(tài)進行課程自主學習、模擬測驗和在線考試,使其產(chǎn)生獲取知識的興趣,更好地激發(fā)學生的學習熱情。通過將闖關(guān)游戲思想在C/C++語言程序設(shè)計課程教學中的實際應(yīng)用,結(jié)果證明基于此種思想開發(fā)的闖關(guān)平臺,顯著提高了實踐教學效果。
這種教學方法,教學工作量巨大,對教師的要求很高,筆者所講授的每屆軟件工程專業(yè)學生人數(shù)200人甚至更多,如果系列課程由不同的教師擔任,則需要這些任課教師相互配合并促進教學團隊的形成。與此同時,基于闖關(guān)游戲式的教學方式,如果結(jié)合具體課程的特點,完成相應(yīng)的題庫設(shè)計,該教學方式還可擴展應(yīng)用于其他實踐性課程。
[1]余英,何劍鋒,何月順,等.面向軟件開發(fā)與服務(wù)的應(yīng)用型人才培養(yǎng)模式探究[J].東華理工大學學報:社會科學版,2013,32(2):193-196.
[2]杜炫杰,葉惠文,胡欽太.大學計算機基礎(chǔ)課程多元立體化教學資源的設(shè)計[J].中國大學教學,2011(5):53-54,40.
[3]孫華,于炯,錢育蓉,等.淺談實踐教學在《C語言程序設(shè)計》課程中的作用[J].電腦知識與技術(shù),2012,48(10):2309-2310,2328.
[4]朱道立,陳佩林,馬以桐,等.多元立體化教學模式的實踐與思索[J].遼寧教育研究,2007(12):55-58.
[5]王紅玲,鄭綱,魏振華,等.拋錨式教學模式在電子商務(wù)安全與支付教學中的應(yīng)用[J].東華理工大學學報:社會科學版,2013,32(4):485-488.
[6]Martin E,Andreas H.Successful implementation of usercentered game based learning in higher education:An example from civil engineering[J].Computers& Education,2007,49(3):873-890.
[7]Foreman J.Game-Based Learning:How to Delight and Instruct in The 21st Century[J].EDUCAUSE Review,2004,39(5):50-56.