開發(fā)彈球游戲教學(xué)講解設(shè)計_第1頁
開發(fā)彈球游戲教學(xué)講解設(shè)計_第2頁
開發(fā)彈球游戲教學(xué)講解設(shè)計_第3頁
開發(fā)彈球游戲教學(xué)講解設(shè)計_第4頁
開發(fā)彈球游戲教學(xué)講解設(shè)計_第5頁
已閱讀5頁,還剩1頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、PAGE PAGE 6項目名稱項目2-3 開發(fā)彈球游戲(4學(xué)時)教學(xué)目標(biāo)根據(jù)彈球游戲的需求,探討歸納需要解決的問題,了解面向?qū)ο蟪绦蜷_發(fā)的基本理念。學(xué)會創(chuàng)建類和對象。初步掌握面向?qū)ο蟪绦蛟O(shè)計的基本方法,學(xué)會通過編程實現(xiàn)游戲功能。資源準(zhǔn)備學(xué)生準(zhǔn)備:搜索下載小球彈跳之類的小游戲并體驗,思考開發(fā)小游戲的思路。教師準(zhǔn)備:彈球游戲程序。教學(xué)重點了解面向?qū)ο蟪绦蜷_發(fā)的基本理念教學(xué)難點初步掌握面向?qū)ο蟪绦蛟O(shè)計的基本方法,學(xué)會通過編程實現(xiàn)游戲功能。教學(xué)過程教學(xué)環(huán)節(jié)教學(xué)活動及步驟情境導(dǎo)入教師引導(dǎo)學(xué)生閱讀案例導(dǎo)入情境,提出本項目的驅(qū)動性問題 我們玩過小球彈跳之類的小游戲,小球在屏幕上移動彈跳。你知道如何使用Pyt

2、hon 面向?qū)ο蟪绦蛟O(shè)計來開發(fā)小游戲嗎?讓我們一起嘗試創(chuàng)建彈球游戲吧。游戲規(guī)則:彈球游戲讓小球在屏幕上移動,碰到上下左右邊界則彈跳。任務(wù)實施一創(chuàng)建小球類和對象教師引導(dǎo)學(xué)生閱讀教材上的任務(wù)描述 創(chuàng)建一個類名為 Ball 的類,為其賦予屬性和方法,創(chuàng)建一個名為 Ball 的對象,調(diào)用類的屬性和方法,使一個藍(lán)色的小球顯示在畫布中間。小組針對以下問題進行探究及討論 試玩彈球游戲,說出該游戲的規(guī)則并交流游戲體驗。彈球游戲中涉及的實體是什么?該實體具備哪些屬性和方法?如何創(chuàng)建類和對象?你能說一說類和對象的關(guān)系嗎?嘗試定義名為 Ball 的類,創(chuàng)建名為 Ball 的對象,使藍(lán)色小球顯示在畫布上。教師針對以上

3、問題進行操作提示 1. 創(chuàng)建類和對象的格式。(1)定義類的格式:class 類名:屬性列表方法列表(2)創(chuàng)建對象。創(chuàng)建對象和調(diào)用一個函數(shù)很相似,可以使用類名作為關(guān)鍵字去創(chuàng)建一個類的對象。對象名 = 類名( )給對象添加屬性的方法如下:對象名.新的屬性名 = 值2. 創(chuàng)建 Ball 類和 Ball 對象。(1)準(zhǔn)備工作。加載 Tkinter、Time 庫,引入 Tkinter 模塊的內(nèi)容,創(chuàng)建彈球游戲窗口和畫布。(2)創(chuàng)建 Ball 類。使用 class 語句創(chuàng)建 Ball 類,使用構(gòu)造方法創(chuàng)建初始化函數(shù),包括兩個參數(shù) huabu 和 color 屬性(畫布及小球顏色),為了移動小球,需要將所畫

4、小球的 ID 保存,通過初始化操作,使其繪制一個指定大小和顏色的小球并移至畫布中間位置顯示。定義 DRAW 函數(shù),內(nèi)容后續(xù)添加,以檢測小球坐標(biāo)并根據(jù)情況反彈。(3)創(chuàng)建 ball 對象。創(chuàng)建一個藍(lán)色小球?qū)ο?。任?wù)實施二編寫小球彈跳程序教師提出本任務(wù)要求 分析本項目開發(fā)彈球游戲的算法和解決方案,并編寫簡單的小球彈跳程序,讓小球在屏幕畫布上左右移動,碰到畫布左右邊界則反彈。問題探究 1. 分析開發(fā)彈球游戲的思路,說出需要解決的問題及算法策略。2. 操作簡單的小球彈跳游戲,想一想,預(yù)設(shè)小球移動方向和速度的算法是什么?檢測到小球碰到畫布邊界時反彈的算法是什么?小球如何在畫布上移動?小球的坐標(biāo)位置是如何

5、獲取的?需要調(diào)用哪些 CANVAS 函數(shù)?3.編寫小球彈跳程序,讓小球在畫布上左右水平移動,當(dāng)檢測到小球碰到畫布左右邊界時反彈。三、教師針對以上問題進行操作提示 從問題分析出發(fā),畫出流程圖,講解解決方案。1. 畫出本項目彈球游戲流程圖。2.小球彈跳程序的編寫思路。修改任務(wù)一ball.py程序,修改Ball類的初始化函數(shù),設(shè)定 Ball 類運動的方向和偏移量;修改 DRAW 函數(shù),調(diào)整小球的行為。在 DRAW 函數(shù)中檢測坐標(biāo)并根據(jù)坐標(biāo)改變移動方向,實現(xiàn)反彈。3. 編寫程序,使小球左右水平移動,碰到畫布左右邊界時反彈。(1)編寫小球 Ball 類的初始化函數(shù),使小球左右水平移動,并獲取當(dāng)前畫布寬度

6、存于對象變量中。(2)編寫 DRAW 函數(shù),調(diào)用畫布的 MOVE 函數(shù)和COORDS 函數(shù),獲取小球坐標(biāo),檢測到小球碰到畫布左右邊界時反彈。問題探究 運行及調(diào)試程序。測試過程中遇到了哪些問題?你是如何處理的?思考如何讓小球的移動速度快一些?任務(wù)實施三優(yōu)化彈球游戲程序教師提出本任務(wù)要求 優(yōu)化彈球游戲程序,修改程序代碼,讓小球在屏幕畫布上四處移動,碰到畫布邊界讓它反彈。問題探究 1. 修改程序代碼,讓小球在畫布垂直方向上移動,當(dāng)檢測到小球碰到畫布上下邊界時反彈。2. 修改程序,讓小球隨機移動,檢測到小球碰到畫布上下左右邊界時反彈。教師針對以上問題進行操作提示 1. 修改任務(wù)二程序代碼,讓小球在垂直

7、方向上移動,檢測到小球碰到畫布上下邊界時反彈。修改小球 Ball 類的初始化函數(shù)和 DRAW 函數(shù)。2. 修改任務(wù)二程序代碼,完善游戲功能,讓小球隨機移動,檢測到小球碰到畫布上下左右邊界時反彈。參考資源 2-3-1, 完善程序。問題探究 試著編寫程序代碼并運行調(diào)試,參考資源 2-3-1,修改、運行及調(diào)試程序。挑戰(zhàn)進階 在游戲中添加一個球拍,用戶左右移動球拍接球以防止小球墜落。如何修改程序使小球碰到球拍時反彈?如果小球落到屏幕底部,則游戲結(jié)束。評價反思學(xué)習(xí)評價教師引導(dǎo)學(xué)生依據(jù)學(xué)習(xí)評價表對本項目的學(xué)習(xí)情況進行自評或互評學(xué)習(xí)反思教師引導(dǎo)學(xué)生依據(jù)學(xué)習(xí)反思表對本項目的學(xué)習(xí)進行反思課后作業(yè)一、完成知識鞏固

8、題1、選擇題(單選或多選)(1)關(guān)于類和對象的關(guān)系,下列描述正確的是( )。A. 類是面向?qū)ο蟮暮诵腂. 類是現(xiàn)實中事物的個體C. 對象是根據(jù)類創(chuàng)建的,并且一個類只能對應(yīng)一個對象D. 對象描述的是現(xiàn)實的個體,它是類的實例(2)以下關(guān)于 self 的說法不正確的是( )。A. self 可有可無,它的參數(shù)位置也不確定B. self 是可以修改的C. self 代表當(dāng)前對象的地址D. self 不是關(guān)鍵詞,也不用賦值2. 填空題(1)在 Python 中,可以使用( )關(guān)鍵字來聲明一個類。(2)Python 提供名稱為( )的構(gòu)造方法,實現(xiàn)讓類的對象完成初始化。3. 判斷題(在括號內(nèi)打“”或“”)(1)面向?qū)ο笫腔诿嫦蜻^程的。( ) (2)通過類可以創(chuàng)建對象,有且只有一個對象實例。 ( )二、完成實踐拓展題設(shè)計一個表示學(xué)生的類:student。該類的屬性包括name(姓名)、age(年齡)、scores (成績),其中成績包含語文、數(shù)學(xué)和英語 3 科成績,每科成績的類型為整數(shù)。此外該類還包含 3 個方法。(1)獲取學(xué)生姓名的方法:get_name( ) ,返回

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論