前言:想要寫出一篇引人入勝的文章?我們特意為您整理了面向?qū)ο蟪绦蛟O計課程實驗系統(tǒng)范文,希望能給你帶來靈感和參考,敬請閱讀。
關鍵詞:面向?qū)ο蟪绦蛟O計課程;實驗教學;快樂學習
1實驗內(nèi)容
在面向?qū)ο蟪绦蛟O計課程中,涉及到一系列與面向過程編程所不同的概念,如類、對象、屬性、操作、繼承、多態(tài)等。這些概念比較抽象,學生初學時難以理解和把握。而角色扮演游戲能較好地反映面向?qū)ο蟪绦蛟O計的特點,能讓學生在娛樂中學習這些基本概念。面向?qū)ο蟪绦蛟O計課程的教學一般是按照類的封裝性、繼承性、多態(tài)性的順序組織內(nèi)容[9]。為此,筆者結合角色扮演游戲的特點,將面向?qū)ο蟮某绦蛟O計課程實驗劃分為以下3部分內(nèi)容[10‐11]:(1)封裝:該部分實驗要求學生掌握和應用類的建立、對象的聲明和使用等知識,要求學生定義2個類———怪獸(Monster)類和英雄(Hero)類,并實現(xiàn)其基本屬性和操作。(2)繼承:該部分實驗要求學生掌握和應用類的繼承機制,實現(xiàn)Monster類和大怪獸(Boss)類之間的繼承關系。(3)多態(tài):該部分實驗要求學生掌握和應用多態(tài)的實現(xiàn)機制,實現(xiàn)Monster類和Boss類的對象操作的多態(tài)。在以上實驗的基礎上,還可以擴展運算符重載、模板等實驗內(nèi)容。
2系統(tǒng)設計與實現(xiàn)
基于游戲的面向?qū)ο蟪绦蛟O計課程實驗系統(tǒng)以實現(xiàn)一個簡單的對打游戲為背景,根據(jù)該課程的教學內(nèi)容和教學進度要求,對游戲階段進行劃分,構造針對不同內(nèi)容的實驗題目,逐步開放。每個實驗題目都要求學生在已有的固定程序框架下填入自行編寫的代碼,實現(xiàn)所要求的程序功能。學生提交代碼后,系統(tǒng)首先將學生編寫的代碼與程序框架進行合并,隨后采用后臺在線編譯工具進行整體編譯,查找是否存在語法錯誤。若有,則返回錯誤信息;否則,利用代碼分析工具對代碼進行分析,檢查是否已實現(xiàn)所要求實現(xiàn)的功能,是否實現(xiàn)選做功能。隨后,系統(tǒng)進行代碼測試,檢查是否存在運行錯誤。最后運行模塊將正確實現(xiàn)的功能在前臺顯示出來。前臺將讀取后臺代碼的實現(xiàn)情況,以圖形界面的方式顯示已正確定義的類和對象,并為對象提供后臺代碼正確實現(xiàn)的操作。根據(jù)后臺代碼定義的游戲流程,實現(xiàn)與學生的互動游戲,并在游戲中讓學生發(fā)現(xiàn)所寫代碼中缺少的功能,更好地體會每一部分代碼的功能和效果。(1)代碼編譯模塊將抽取實驗題目的固定框架代碼與學生提交的代碼進行拼接,調(diào)用在線編譯器MinGW對合并后的代碼進行編譯。若無錯誤,將代碼交予代碼分析模塊進行語義分析。(2)代碼分析模塊針對不同游戲階段的要求,規(guī)定類名、函數(shù)名等的標準,要求學生所提交的代碼的名稱以此為依據(jù)。運行時,分析模塊對學生提交代碼進行分析,提取關鍵類、函數(shù)等,與命名標準做對比,逐一排查是否實現(xiàn)對應功能。(3)代碼測試模塊針對學生程序設計完成情況,利用預先定義好的后臺數(shù)據(jù),進行測試分析并生成相應的測試報告。(4)代碼運行模塊在對固定框架和學生代碼合并后的程序進行分析測試后,對程序進行修改,創(chuàng)建socket連接,使其具備通信功能,并在內(nèi)部加入了通信協(xié)議解析,解析從前臺傳來的指令協(xié)議。(5)通信模塊負責通過socket在后臺與前臺之間進行數(shù)據(jù)與指令的傳輸。在收到請求后,首先創(chuàng)建連接線程,實現(xiàn)后臺程序和前臺顯示兩端的通信,將代碼功能以圖形化的效果展示。(6)前臺模塊提供教師模式和學生模式,為用戶提供各類功能使用的圖形化界面。在教師模式下,教師可以對題庫、作業(yè)、成績進行管理,增加或修改實驗題目,或結束實驗作業(yè),查看學生代碼和提交情況,查看和管理學生的成績。在學生模式下,在線答題模塊讓學生可以查看作業(yè)、根據(jù)要求在線編寫代碼并提交。若代碼通過,可以進入在線游戲。若在游戲中發(fā)現(xiàn)功能的缺失,可以修改代碼并再次提交。在線游戲模塊通過通信模塊連接前后臺,將經(jīng)過系統(tǒng)分析與編譯的學生提交代碼的實現(xiàn)情況傳輸給游戲模塊。游戲模塊根據(jù)收到的數(shù)據(jù),在游戲場景下生成對應的角色,激活已正確實現(xiàn)的相關操作,轉(zhuǎn)化在圖形界面上展現(xiàn)出來,并根據(jù)編寫的程序流程與用戶進行游戲互動,讓學生在游戲中體會代碼經(jīng)過編譯后,實際被執(zhí)行的效果。
3系統(tǒng)測試
基于游戲的面向?qū)ο蟪绦蛟O計實驗系統(tǒng)為學生提供了趣味性的實驗過程。在系統(tǒng)固定的實驗流程框架下,學生在線編寫并提交考查關鍵知識點的代碼,系統(tǒng)后臺自動在線對代碼進行整合、編譯、分析等。系統(tǒng)對學生提交的類的實現(xiàn)代碼進行分析測試,對實現(xiàn)異常的函數(shù)進行標注。學生提交代碼通過后,系統(tǒng)提供在線游戲的功能,讓學生直觀感受所編寫代碼的效果。正確實現(xiàn)的類和對象及其相關的屬性和操作、類的繼承情況等被顯示出來,而出現(xiàn)異常的信息則無法顯示。
4結語
基于游戲的面向?qū)ο蟪绦蛟O計課程實驗系統(tǒng)要求學生在固定框架下,按照各個實驗考查的知識點,編寫并提交相應代碼。系統(tǒng)將在線編譯、分析、測試和運行提交的代碼,并在前臺結合角色扮演游戲,顯示正確實現(xiàn)的功能,以趣味化的方式,加深學生對面向?qū)ο蟪绦蛟O計課程中各個概念的理解和掌握。
參考文獻(References)
[1]賈澎濤.基于游戲案例的面向?qū)ο蟪绦蛟O計課程教學改革[J].陜西教育(高教版),2011(12):80.
[2]彭召意,文志強,朱艷輝.以項目驅(qū)動的面向?qū)ο蟪绦蛟O計課程教學研究[J].計算機教育,2012(24):95‐98.
[3]黃建燈,田娟.基于應用型人才培養(yǎng)的《面向?qū)ο蟪绦蛟O計》課程教學改革探討[J].計算機產(chǎn)品與流通,2017(7):201.
[4]國偉.《C#面向?qū)ο蟪绦蛟O計課程》教學改革探討與實踐[J].科技創(chuàng)新導報,2013(2):154.
作者:肖志嬌 劉士俊 徐婧 單位:深圳大學計算機與軟件學院