999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于游戲的面向對象程序設計課程實驗系統

2019-06-18 03:10:12肖志嬌劉士俊
實驗技術與管理 2019年5期
關鍵詞:游戲實驗課程

肖志嬌, 劉士俊, 徐 婧

(深圳大學 計算機與軟件學院, 廣東 深圳 518060)

面向對象程序設計課程的教學內容在邏輯上較難理解,內容相對枯燥[1-3];而在教學中,一定的學習情境會激發學生的學習興趣[3-4]。基于游戲的教學方法將知識點融入游戲中,為學生提供一個充滿樂趣和挑戰的學習環境,能加快學生對知識的理解[5],提高學習效率和效果[6-7]。

面向對象程序設計課程的教學目標是使學生系統地掌握面向對象編程的基本原理,能夠利用面向對象程序開發語言進行編程和分析現實問題[8]。為了提高課程實驗的趣味性,筆者將在線代碼評測系統與游戲實驗案例相結合,開發了一個基于游戲的面向對象程序設計(C++)的課程實驗系統。該系統基于一個簡單的角色扮演類的對打游戲,讓學生在指定的框架下編寫各個知識點關鍵代碼,通過后臺系統分析與編譯后,將編寫的功能轉換到圖形界面展現。通過該實驗系統,學生可以直觀地看到所寫代碼的效果,提高了學習效率,效果良好。

1 實驗內容

在面向對象程序設計課程中,涉及到一系列與面向過程編程所不同的概念,如類、對象、屬性、操作、繼承、多態等。這些概念比較抽象,學生初學時難以理解和把握。而角色扮演游戲能較好地反映面向對象程序設計的特點,能讓學生在娛樂中學習這些基本概念。面向對象程序設計課程的教學一般是按照類的封裝性、繼承性、多態性的順序組織內容[9]。為此,筆者結合角色扮演游戲的特點,將面向對象的程序設計課程實驗劃分為以下3部分內容[10-11]:

(1) 封裝:該部分實驗要求學生掌握和應用類的建立、對象的聲明和使用等知識,要求學生定義2個類——怪獸(Monster)類和英雄(Hero)類,并實現其基本屬性和操作。基本類圖如圖1所示。

圖1 基本類圖

(2) 繼承:該部分實驗要求學生掌握和應用類的繼承機制,實現Monster類和大怪獸(Boss)類之間的繼承關系,如圖2所示。

(3) 多態:該部分實驗要求學生掌握和應用多態的實現機制,實現Monster類和Boss類的對象操作的多態,如圖3所示。

圖2 繼承關系類圖圖3 多態機制類圖

在以上實驗的基礎上,還可以擴展運算符重載、模板等實驗內容。

2 系統設計與實現

基于游戲的面向對象程序設計課程實驗系統以實現一個簡單的對打游戲為背景,根據該課程的教學內容和教學進度要求,對游戲階段進行劃分,構造針對不同內容的實驗題目,逐步開放。每個實驗題目都要求學生在已有的固定程序框架下填入自行編寫的代碼,實現所要求的程序功能。

學生提交代碼后,系統首先將學生編寫的代碼與程序框架進行合并,隨后采用后臺在線編譯工具進行整體編譯,查找是否存在語法錯誤。若有,則返回錯誤信息;否則,利用代碼分析工具對代碼進行分析,檢查是否已實現所要求實現的功能,是否實現選做功能。隨后,系統進行代碼測試,檢查是否存在運行錯誤。最后運行模塊將正確實現的功能在前臺顯示出來。

前臺將讀取后臺代碼的實現情況,以圖形界面的方式顯示已正確定義的類和對象,并為對象提供后臺代碼正確實現的操作。根據后臺代碼定義的游戲流程,實現與學生的互動游戲,并在游戲中讓學生發現所寫代碼中缺少的功能,更好地體會每一部分代碼的功能和效果。

實驗系統的模塊設計如圖4所示。

圖4 實驗系統模塊圖

(1) 代碼編譯模塊將抽取實驗題目的固定框架代碼與學生提交的代碼進行拼接,調用在線編譯器MinGW對合并后的代碼進行編譯。若無錯誤,將代碼交予代碼分析模塊進行語義分析。

(2) 代碼分析模塊針對不同游戲階段的要求,規定類名、函數名等的標準,要求學生所提交的代碼的名稱以此為依據。運行時,分析模塊對學生提交代碼進行分析,提取關鍵類、函數等,與命名標準做對比,逐一排查是否實現對應功能。

(3) 代碼測試模塊針對學生程序設計完成情況,利用預先定義好的后臺數據,進行測試分析并生成相應的測試報告。

(4) 代碼運行模塊在對固定框架和學生代碼合并后的程序進行分析測試后,對程序進行修改,創建socket連接,使其具備通信功能,并在內部加入了通信協議解析,解析從前臺傳來的指令協議。

(5) 通信模塊負責通過socket在后臺與前臺之間進行數據與指令的傳輸。在收到請求后,首先創建連接線程,實現后臺程序和前臺顯示兩端的通信,將代碼功能以圖形化的效果展示。

(6) 前臺模塊提供教師模式和學生模式,為用戶提供各類功能使用的圖形化界面。系統前臺模塊如圖5所示。

在教師模式下,教師可以對題庫、作業、成績進行管理,增加或修改實驗題目,發布或結束實驗作業,查看學生代碼和提交情況,查看和管理學生的成績。

圖5 實驗系統前臺模塊圖

在學生模式下,在線答題模塊讓學生可以查看作業、根據要求在線編寫代碼并提交。若代碼通過,可以進入在線游戲。若在游戲中發現功能的缺失,可以修改代碼并再次提交。在線游戲模塊通過通信模塊連接前后臺,將經過系統分析與編譯的學生提交代碼的實現情況傳輸給游戲模塊。游戲模塊根據收到的數據,在游戲場景下生成對應的角色,激活已正確實現的相關操作,轉化在圖形界面上展現出來,并根據編寫的程序流程與用戶進行游戲互動,讓學生在游戲中體會代碼經過編譯后,實際被執行的效果。

3 系統測試

基于游戲的面向對象程序設計實驗系統為學生提供了趣味性的實驗過程。在系統固定的實驗流程框架下,學生在線編寫并提交考查關鍵知識點的代碼,系統后臺自動在線對代碼進行整合、編譯、分析等。如圖6所示,系統對學生提交的類的實現代碼進行分析測試,對實現異常的函數進行標注。

圖6 函數測試結果輸出

學生提交代碼通過后,系統提供在線游戲的功能,讓學生直觀感受所編寫代碼的效果,如圖7所示。正確實現的類和對象及其相關的屬性和操作、類的繼承情況等被顯示出來,而出現異常的信息則無法顯示。

圖7 代碼實現的圖形化展示

4 結語

基于游戲的面向對象程序設計課程實驗系統要求學生在固定框架下,按照各個實驗考查的知識點,編寫并提交相應代碼。系統將在線編譯、分析、測試和運行提交的代碼,并在前臺結合角色扮演游戲,顯示正確實現的功能,以趣味化的方式,加深學生對面向對象程序設計課程中各個概念的理解和掌握。

猜你喜歡
游戲實驗課程
記一次有趣的實驗
數字圖像處理課程混合式教學改革與探索
軟件設計與開發實踐課程探索與實踐
計算機教育(2020年5期)2020-07-24 08:53:38
為什么要學習HAA課程?
做個怪怪長實驗
數獨游戲
瘋狂的游戲
飛碟探索(2016年11期)2016-11-14 19:34:47
NO與NO2相互轉化實驗的改進
爆笑游戲
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
主站蜘蛛池模板: 日韩东京热无码人妻| 亚洲精品视频免费看| 波多野结衣一区二区三区88| 色丁丁毛片在线观看| 久久精品嫩草研究院| 国产一级毛片网站| 国产区精品高清在线观看| 亚洲精品欧美日本中文字幕| 亚洲人人视频| 亚洲精品日产精品乱码不卡| 在线一级毛片| 国产小视频免费| 色悠久久久久久久综合网伊人| 91九色视频网| 午夜福利视频一区| 国产大片喷水在线在线视频 | 国产网站免费观看| 精品国产Av电影无码久久久| 欧美一级黄色影院| 午夜精品影院| 综合色婷婷| 亚洲人网站| 国产毛片不卡| 亚洲中字无码AV电影在线观看| 亚洲欧美在线精品一区二区| 日韩黄色精品| 伊人国产无码高清视频| 91无码网站| 91香蕉国产亚洲一二三区| 在线无码av一区二区三区| 沈阳少妇高潮在线| 天天操天天噜| 欧美成人国产| 香蕉久久永久视频| 一本色道久久88亚洲综合| 全部免费特黄特色大片视频| 久久国产亚洲偷自| 不卡无码网| 热久久这里是精品6免费观看| 波多野结衣国产精品| 国产免费怡红院视频| 久久黄色免费电影| 亚洲狼网站狼狼鲁亚洲下载| 国产精品极品美女自在线看免费一区二区| 国产欧美成人不卡视频| 永久免费无码日韩视频| 久久无码av三级| 亚洲制服丝袜第一页| 国产成人久视频免费| 欧美综合区自拍亚洲综合天堂| 五月天综合网亚洲综合天堂网| 亚洲第一色视频| 在线国产毛片手机小视频| 国产91高跟丝袜| 国产午夜福利亚洲第一| 国产精品福利导航| 91丨九色丨首页在线播放| 国产白浆在线观看| 国产免费a级片| 国产亚洲精品91| 国产乱子伦一区二区=| 麻豆国产原创视频在线播放| 亚洲日韩精品无码专区97| 免费高清a毛片| 国产粉嫩粉嫩的18在线播放91| 国产九九精品视频| 高潮爽到爆的喷水女主播视频 | 久久精品91麻豆| 欧美日本激情| 另类欧美日韩| 国产18在线| 538国产在线| 国产精品成人啪精品视频| 午夜欧美在线| 99久久精品免费看国产免费软件| 色屁屁一区二区三区视频国产| 人人91人人澡人人妻人人爽| 四虎影视8848永久精品| 日韩欧美中文| 欧美日一级片| 人妖无码第一页| 国产精品尤物在线|