亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        單機(jī)版記憶游戲的設(shè)計與實(shí)現(xiàn)
        ——Java語言任務(wù)驅(qū)動教學(xué)法應(yīng)用案例*

        2021-03-25 13:05:08田春婷
        科技與創(chuàng)新 2021年5期
        關(guān)鍵詞:按鈕案例游戲

        田春婷

        (蘭州石化職業(yè)技術(shù)學(xué)院信息處理與控制工程學(xué)院,甘肅 蘭州730060)

        1 引言

        大數(shù)據(jù)時代,java語言[1]作為一門老牌通用編程語言,有著成熟的社區(qū)生態(tài),依然是互聯(lián)網(wǎng)各個專業(yè)領(lǐng)域最熱門的編程語言之一。在行業(yè)領(lǐng)域內(nèi)的人才占有率和使用率,以絕對優(yōu)勢穩(wěn)居世界第一。人工智能[2]、云計算[3]、大數(shù)據(jù)、物聯(lián)網(wǎng)、移動開發(fā)等數(shù)字化新技術(shù)較常用的編程語言也是java語言。

        Java語言作為一門純面向?qū)ο缶幊陶Z言,面向?qū)ο缶幊趟枷牒退惴ㄊ撬撵`魂。教學(xué)難點(diǎn)是如何提高學(xué)生的算法分析能力和編程能力。將小游戲的設(shè)計與實(shí)現(xiàn)融入到j(luò)ava語言課程的任務(wù)驅(qū)動教學(xué)法應(yīng)用案例中,在提高學(xué)生對編程的興趣方面尤為重要。

        2 java語言任務(wù)驅(qū)動教學(xué)法

        在java語言的整個教學(xué)過程中,主要采取任務(wù)驅(qū)動教學(xué)法[4]等多種教學(xué)方法,以更好樹立學(xué)生面向?qū)ο蟪绦蛟O(shè)計思想,提高學(xué)生的算法分析能力和使用面向?qū)ο笏枷虢鉀Q實(shí)際問題的能力。

        全面推行“任務(wù)驅(qū)動”教學(xué)法,通過精選案例、分解任務(wù)、講練有機(jī)融合,將java語言相關(guān)知識點(diǎn)融入案例。學(xué)生通過學(xué)習(xí)趣味游戲等案例[5],掌握java語言技術(shù),并對面向?qū)ο缶幊逃幸粋€直觀和更加感性的認(rèn)識,激發(fā)學(xué)生積極參與整個教學(xué)過程,更好建立起面向?qū)ο蟮木幊趟枷搿?/p>

        在教學(xué)過程中,采用“感知與聯(lián)想→引入與模擬→實(shí)戰(zhàn)演習(xí)→總結(jié)提高”模式,實(shí)現(xiàn)任務(wù)分層次教學(xué),以滿足不同水平學(xué)生的學(xué)習(xí)要求。

        3 java語言實(shí)現(xiàn)單機(jī)版記憶游戲案例總體設(shè)計要求

        通過對單機(jī)版記憶游戲案例[6]進(jìn)行任務(wù)分解,分層次逐步實(shí)現(xiàn)該游戲功能的設(shè)計要求,將java語言相關(guān)知識點(diǎn)有機(jī)融合到游戲?qū)崿F(xiàn)的各個環(huán)節(jié)中,從而使學(xué)生在學(xué)習(xí)編程的同時享受設(shè)計游戲的樂趣,將學(xué)習(xí)和娛樂有效結(jié)合,激發(fā)學(xué)生的程序設(shè)計興趣。

        本文討論的記憶游戲教學(xué)案例為單機(jī)版,總體設(shè)計要求及功能如下:①該游戲設(shè)計要求有一組網(wǎng)格按鈕,代表玩家可以翻轉(zhuǎn)的卡片。所有按鈕的初始顏色都是空白或灰色的,玩家不知道卡片背面所隱藏的顏色。每次翻兩個,一個一個,如果匹配,就能得分。②在窗體頂部和底部分別設(shè)計有標(biāo)簽,用來指定輪到哪位玩家以及玩家得分和他們應(yīng)該做什么。③游戲期間,一位玩家會先選擇一個按鈕,然后再選擇另一個。當(dāng)玩家選擇按鈕的時候,按鈕會顯示它隱藏的背面顏色。如果玩家選擇的兩個按鈕顏色相同,游戲會告訴玩家,然后當(dāng)他再次點(diǎn)擊任何一個按鈕(繼續(xù))時,選擇顏色相同的兩個按鈕時,卡片匹配成功,按鈕顏色會變成黑色。玩家再次嘗試選擇兩個其他按鈕;如果玩家選擇的兩個按鈕顏色不同,卡片匹配不成功,則輪流到另一位玩家點(diǎn)擊按鈕玩游戲。④玩家不能選擇同一個按鈕兩次,也不能選擇一個黑色按鈕。當(dāng)所有的按鈕都是黑色的時候,游戲會告訴玩家誰贏了(或者是平局),當(dāng)按下確定按鈕,游戲就會重新開始。⑤在任何時候,游戲都通過使用兩個標(biāo)簽告訴玩家發(fā)生了什么——一個標(biāo)簽位于窗口頂部的玩家0,另一個標(biāo)簽位于窗口底部的玩家1?;钴S玩家消息有一個綠色的背景,另一位玩家消息有一個紅色的背景。

        4 記憶游戲教學(xué)案例分層次設(shè)計要求及java實(shí)現(xiàn)

        為了滿足不同能力水平學(xué)生的學(xué)習(xí)要求,在java語言教學(xué)過程中,為更好地實(shí)現(xiàn)游戲功能,采用由易到難的分層次教學(xué)設(shè)計模式,給出由簡單到難的不同要求階段案例。

        根據(jù)單機(jī)版記憶游戲設(shè)計要求及功能要求,可以將記憶游戲案例教學(xué)目標(biāo)分為以下兩個階段。

        4.1 單擊用命令按鈕實(shí)現(xiàn)一組標(biāo)簽顏色的隨機(jī)切換

        4.1.1 設(shè)計及java語言實(shí)現(xiàn)要求

        創(chuàng)建一個最終類ColorLabel,向類中添加一個setDrawColor( )方法,這個方法帶有一個Color類型的參數(shù),ColorLabel類中還要求有一個Color類型的成員變量drawColor,這個成員變量用來給標(biāo)簽著色,改變drawColor的值則會改變標(biāo)簽的顏色,setDrawColor( )方法的參數(shù)用來給變量drawColor傳值。

        java語言代碼實(shí)現(xiàn)如下:

        創(chuàng)建一個名為Main的類,添加主方法main( )。

        向Main類中添加三個非靜態(tài)成員變量:①名為guiFrame的JFrame對象引用;②名為arrayLabels的64位一維數(shù)組,數(shù)組元素類型為ColorLabel的對象引用;③名為rand的Random的對象引用,Random類型來自java.util包,Y成員變量rand用來產(chǎn)生隨機(jī)數(shù)。

        Java語言代碼實(shí)現(xiàn)如下:

        Main類中添加返回類型為void且無參的非靜態(tài)成員方法createGUⅠ( )。

        createGUⅠ( )方法體內(nèi)容設(shè)計要求如下:①給guiFrame賦值為一個新創(chuàng)建的JFrame對象;②當(dāng)程序運(yùn)行結(jié)束時,設(shè)置窗體默認(rèn)關(guān)閉;③設(shè)置窗體標(biāo)題為“Label demo”;④創(chuàng)建64個ColorLabel對象,并且將其存儲在arrayLabels數(shù)組中,給每一位數(shù)組元素賦值為rand對象產(chǎn)生的隨機(jī)數(shù)值,這個隨機(jī)數(shù)代表一種顏色;⑤向面板添加64個ColorLabel對象,運(yùn)用布局管理器,向窗體頂端和底部分別添加一個8×8的網(wǎng)格和命令按鈕。

        Java語言代碼實(shí)現(xiàn)如下:①在主類Main中創(chuàng)建一個適當(dāng)?shù)姆椒╪otification( ),用來告訴命令按鈕,當(dāng)它被單擊時,通知主類,該方法將被告知執(zhí)行了命令按鈕的單擊操作(需要在主類中執(zhí)行操作界面)。②在主類中實(shí)現(xiàn)notification( )方法。這樣,當(dāng)按鈕被單擊時,每一個標(biāo)簽顏色會被隨機(jī)改變。

        Java語言代碼實(shí)現(xiàn)如下:測試程序代碼。實(shí)現(xiàn)當(dāng)單擊命令按鈕時,8×8網(wǎng)格的標(biāo)簽顏色會被隨機(jī)改變。

        4.1.2 程序設(shè)計要求

        程序設(shè)計要求如下:①創(chuàng)建期望的主類;②窗體、數(shù)組和隨機(jī)對象引用是成員變量,并在適當(dāng)?shù)奈恢脛?chuàng)建;③需要創(chuàng)建creategui方法并且起到適當(dāng)作用;④8×8網(wǎng)格標(biāo)簽為數(shù)組元素;⑤標(biāo)簽有隨機(jī)顏色;⑥主類處理按鈕通知事件(即操作處理程序是在主類中,而不是內(nèi)部類或其他類);⑦單擊命令按鈕則改變每一個標(biāo)簽顏色;⑧程序演示正確。

        4.2 在4.1基礎(chǔ)上,實(shí)現(xiàn)記憶游戲功能

        4.2.1 程序設(shè)計部分的要求

        程序設(shè)計部分的要求如下:①確保在代碼中使用的常量(static final int)有要使用的不同顏色的數(shù)量、每種顏色的按鈕數(shù)量、網(wǎng)格的寬度和高度(在按鈕中)、每個按鈕的大小(以像素為單位);②確保在網(wǎng)格中的每個按鈕都是自己創(chuàng)建的JButton子類,按鈕大小與代碼中給定常量的值相匹配。當(dāng)要求更改按鈕的尺寸時,程序仍可以正常運(yùn)行;③確保當(dāng)按鈕被單擊的操作能被監(jiān)聽到;④每個按鈕應(yīng)該知道自己的狀態(tài),即應(yīng)該繪制什么顏色、是否繪制完成、是否點(diǎn)擊過(即應(yīng)該顯示其顏色)、是否沒有點(diǎn)擊過(即顯示灰色)或者已經(jīng)被匹配(應(yīng)該是黑色)等,即將這些信息保存在按鈕中,而不是保存在其他數(shù)據(jù)結(jié)構(gòu)中。

        4.2.2 程序?qū)崿F(xiàn)部分的要求

        程序?qū)崿F(xiàn)部分的要求如下:①顯示具有指定行數(shù)和列數(shù)(常量)的正方形網(wǎng)格(指定的大小,常量)。②每個正方形最初應(yīng)顯示為灰色,直到它已被點(diǎn)擊,但應(yīng)顯示其被單擊之后真正的顏色。③使用正確數(shù)量的不同顏色,可用的顏色數(shù)量是在一個常量中指定的。每個正方形從可用的顏色中給定一個隨機(jī)(隱藏)的顏色。④每種顏色都應(yīng)該創(chuàng)建若干給定個數(shù)的正方形(這個數(shù)字應(yīng)該在代碼中定義為一個常量)。每一個方塊會分配若干個隨機(jī)的顏色(顏色的數(shù)量乘以每個顏色的方格)必須相等(行乘以列)的網(wǎng)格(即總方格數(shù)量)所以網(wǎng)格大小設(shè)置為適當(dāng)?shù)某A?。⑤?dāng)前玩家只能夠點(diǎn)擊兩個正方形,顯示他們的顏色。只有灰色方塊可以點(diǎn)擊,玩家不能點(diǎn)擊一個完成的方塊(黑色),或點(diǎn)擊同一個方塊兩次。⑥如果選擇兩個相同的正方形,那么當(dāng)前玩家獲得兩分(每個正方形一分),正方形變黑(不能再點(diǎn)擊),當(dāng)前玩家繼續(xù)點(diǎn)擊方塊。⑦如果兩個不同顏色的方塊被選中,方塊再次變成灰色,當(dāng)前玩家回合結(jié)束,另一個玩家開始新的回合(得分狀態(tài)標(biāo)簽應(yīng)該更新)。⑧如果所有的方塊都是黑色的,表示游戲結(jié)束,則應(yīng)彈出一個消息框說明哪個玩家獲勝。⑨當(dāng)單擊確定按鈕關(guān)閉消息框時,操作盤應(yīng)被重置,所有方塊會被重新設(shè)置為新的隨機(jī)顏色,被顯示的最初顏色都是灰色。在按下確定按鈕之前,操作盤不應(yīng)該被重置。應(yīng)該改變現(xiàn)有按鈕的存儲顏色,而不是創(chuàng)建新的按鈕。⑩程序要求被演示的是一個完整的游戲,可以被重置開始新一局游戲(要求相同的大小但不同的按鈕顏色)等。

        5 總結(jié)

        在Java語言教學(xué)過程中,把單機(jī)版記憶游戲的實(shí)現(xiàn)作為任務(wù)驅(qū)動教學(xué)案例,將學(xué)生玩游戲的興趣向開發(fā)游戲方面引導(dǎo),在編寫小游戲的過程中,學(xué)生能夠更容易理解面向?qū)ο笏枷?,游戲代碼也使學(xué)生能夠更容易理解和接受Java語言復(fù)雜的知識要點(diǎn)和算法;在寓教于樂的教學(xué)過程中,能夠更好提高學(xué)生思考問題和解決實(shí)際問題的能力,進(jìn)而大大提高學(xué)生的算法分析能力與面向?qū)ο蟪绦蛟O(shè)計的編程能力,達(dá)到較好的教學(xué)效果。

        猜你喜歡
        按鈕案例游戲
        哪個是門鈴真正的按鈕
        當(dāng)你面前有個按鈕
        案例4 奔跑吧,少年!
        隨機(jī)變量分布及統(tǒng)計案例拔高卷
        發(fā)生在你我身邊的那些治超案例
        中國公路(2017年7期)2017-07-24 13:56:38
        數(shù)獨(dú)游戲
        瘋狂的游戲
        飛碟探索(2016年11期)2016-11-14 19:34:47
        爆笑游戲
        一個模擬案例引發(fā)的多重思考
        第八章直接逃出游戲
        亚洲AVAv电影AV天堂18禁| 国产熟女内射oooo| 中文字幕一区二区三区人妻少妇| 欧美最猛黑人xxxx黑人表情| 亚洲国产美女在线观看| 看全色黄大黄大色免费久久| 国产视频一区二区三区观看| 国产亚洲精品a片久久久| 国产成人无码av在线播放dvd | 少妇愉情理伦片丰满丰满午夜| 亚洲综合国产精品一区二区99| 精品人妻一区二区三区av| 午夜少妇高潮在线观看| 99精品国产一区二区三区a片 | 亚洲天堂中文字幕君一二三四| 麻豆国产精品一区二区三区| 国产欧美日韩精品专区| 欧美另类在线视频| 久久精品av一区二区免费| 国产一区二区三区三区四区精品 | 在教室伦流澡到高潮hnp视频| 亚洲嫩模一区二区三区视频| 天堂av网手机线上天堂| 边喂奶边中出的人妻| 色综合88| 日本一区二区啪啪视频| 人妻熟妇乱又伦精品hd| 国产大学生粉嫩无套流白浆| 国产精品va在线观看一| 蜜桃免费一区二区三区| 又黄又硬又湿又刺激视频免费| 无码人妻系列不卡免费视频| 美女射精视频在线观看| 精品久久久久久无码中文野结衣 | 亚洲国产成人片在线观看| 国产美女在线一区二区三区| 亚洲一区二区三区麻豆| 欧美人与善在线com| 熟女俱乐部五十路二区av| 亚洲人妖女同在线播放| 色欲色香天天天综合网www|