• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      案例教學(xué)法在VB中的應(yīng)用

      2016-10-31 19:52:57李麗華魏樹權(quán)
      電腦知識與技術(shù) 2016年22期
      關(guān)鍵詞:案例設(shè)計(jì)案例教學(xué)法

      李麗華+魏樹權(quán)

      摘要:案例教學(xué)法對于計(jì)算機(jī)專業(yè)是一種新的教學(xué)形式,能激發(fā)學(xué)生的學(xué)習(xí)積極性,提高學(xué)生分析問題和解決問題的能力。該文以掃雷游戲?yàn)槔U述了在VB教學(xué)中采用案例教學(xué)法對控件數(shù)組、函數(shù)過程、遞歸算法等重要的知識點(diǎn)進(jìn)行教學(xué)設(shè)計(jì)和教學(xué)實(shí)施的過程。

      關(guān)鍵詞:案例教學(xué)法;案例設(shè)計(jì);控件數(shù)組

      中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)22-0108-03

      案例教學(xué)法,在計(jì)算機(jī)科學(xué)中是一種開放式、互動式的新型教學(xué)方式,它通過模擬或者重現(xiàn)軟件項(xiàng)目中的關(guān)鍵場景,使學(xué)生主動把自己納入案例當(dāng)中,運(yùn)用已有的知識和經(jīng)驗(yàn)來分析、判斷案例提供的背景、軟件需求描述,并解決相關(guān)軟件設(shè)計(jì)技術(shù)問題,最后,從中總結(jié)出某些關(guān)鍵的知識點(diǎn)或設(shè)計(jì)方案;也可以讓學(xué)生通過自己的思考或者跟隨他人的思路來拓寬自己的視野,從而促進(jìn)學(xué)生進(jìn)行知識技能遷移,提高學(xué)生的軟件設(shè)計(jì)能力[1]。

      控件數(shù)組是Visual Basic中的一個(gè)較難的知識點(diǎn),它是一組具有相同名稱和類型的控件的集合,通過各自的編號(下標(biāo))來識別,并且可以共享事件。程序中使用控件數(shù)組所占用的資源比單獨(dú)添加多個(gè)控件所占用的資源更少,而且控件數(shù)組的事件共享,使用多個(gè)同類型控件在一個(gè)應(yīng)用中執(zhí)行相同或類似的代碼,使用控件數(shù)組比單獨(dú)創(chuàng)建多個(gè)控件更容易設(shè)計(jì),代碼更容易維護(hù)[2]。在控件數(shù)組的教學(xué)過程中,需要學(xué)生理解以控件為數(shù)組的設(shè)計(jì)形式、控件在應(yīng)用界面上的微差異可視化的表現(xiàn)形式,結(jié)合控件事件代碼的共享機(jī)制以解決軟件設(shè)計(jì)問題的設(shè)計(jì)思維,由于設(shè)計(jì)思維的轉(zhuǎn)變,實(shí)踐證明,采用單純的講解其知識點(diǎn)并簡單演示,很難獲得優(yōu)良的教學(xué)效果。

      將案例教學(xué)法引入Visual Basic的教學(xué)過程,就是要把軟件案例的設(shè)計(jì)實(shí)現(xiàn)過程加以典型化處理[3],形成供學(xué)生思考分析的案例,采用鼓勵(lì)學(xué)生獨(dú)立研究學(xué)習(xí)與師生相互探討相結(jié)合的教學(xué)方式,提高學(xué)生分析問題和解決問題的能力。本文在教學(xué)過程中模擬一個(gè)Windows系統(tǒng)自帶的掃雷游戲的實(shí)現(xiàn)過程,靈活的運(yùn)用VB各個(gè)章節(jié)的知識點(diǎn),以案例驅(qū)動的方式,結(jié)合界面設(shè)計(jì)和編碼,以使學(xué)生能夠更加真切的理解和掌握控件數(shù)組的知識要點(diǎn),并能進(jìn)行實(shí)際應(yīng)用設(shè)計(jì)。

      1 案例準(zhǔn)備

      通過多年的教學(xué)實(shí)踐探索,我們認(rèn)為教學(xué)案例的選擇,要滿足三個(gè)條件:典型、貼近實(shí)際、有趣,經(jīng)過細(xì)致選擇,Windows系統(tǒng)自帶的掃雷游戲最后被選中。

      在案例教學(xué)中,要讓學(xué)生成為教學(xué)過程的主角,我們在講解控件數(shù)組課前將準(zhǔn)備好的掃雷游戲案例告知學(xué)生,要求學(xué)生查找一些必要的資料,做好發(fā)言準(zhǔn)備;同時(shí),我們將初步的案例問題分解細(xì)節(jié)告訴學(xué)生[4]。初步分解如下:

      1)游戲地圖構(gòu)建;

      2)游戲地雷分布構(gòu)建;

      3)游戲中點(diǎn)擊控件按鈕,地雷顯示;

      4)游戲中排雷錯(cuò)誤處理。

      2 案例課堂講解討論

      案例課堂講解討論是案例教學(xué)過程的中心環(huán)節(jié),教師需要主動調(diào)動學(xué)員的主動性,引導(dǎo)學(xué)生主動緊緊圍繞案例進(jìn)行思考和分析[5]。以10×10的游戲地圖為例,共需100個(gè)按鈕控件。

      1)游戲地圖構(gòu)建

      地圖如何構(gòu)建?首先引導(dǎo)學(xué)生對不正確的設(shè)計(jì)方案進(jìn)行否定,比如先繪制20個(gè)左右的按鈕控件到界面上,然后依次點(diǎn)擊按鈕生成控件單擊事件,在這個(gè)過程中引導(dǎo)學(xué)生對各個(gè)環(huán)節(jié)進(jìn)行發(fā)言,時(shí)機(jī)成熟后,引入控件數(shù)組知識點(diǎn):

      ①控件數(shù)組的概念及功能:控件數(shù)組是VB中特有的一組對象,同一個(gè)控件數(shù)組的所有控件擁有共同的名稱和類型并響應(yīng)同一個(gè)事件過程,但每一個(gè)控件都擁有自己的屬性值。數(shù)組通過下標(biāo)來標(biāo)示每一個(gè)控件元素。

      ②引入掃雷游戲的實(shí)際需要,生成游戲地圖,基本完成步驟:

      a、做好一個(gè)按鈕當(dāng)模版

      b、建立控件數(shù)組

      c、生成99個(gè)新的控件數(shù)組元素

      ③對設(shè)計(jì)進(jìn)行小結(jié),引導(dǎo)學(xué)生一起歸納采用控件數(shù)組設(shè)計(jì)地圖的初步特征,并重點(diǎn)強(qiáng)調(diào)應(yīng)用到的控件數(shù)組的知識要點(diǎn)[6]。

      2)游戲地雷分布構(gòu)建

      ①分析地雷和控件的關(guān)系:教學(xué)過程中和學(xué)生一起分析,地雷是游戲中的一個(gè)關(guān)鍵元素,但它不是游戲中的獨(dú)立元素,必須和控件進(jìn)行關(guān)聯(lián)。

      ②地雷設(shè)計(jì):可以采用二維數(shù)組記錄哪些按鈕控件對應(yīng)地雷。在窗體的聲明部分聲明二維數(shù)組,用于存儲按鈕控件有地雷的情況。假設(shè)規(guī)定二維數(shù)組某元素的值為1,代表該位置上的按鈕有地雷,為0代表無地雷。

      Dim zha(1 To 10, 1 To 10) As Integer

      ③生成隨機(jī)地雷

      教學(xué)中和學(xué)生一同進(jìn)行分析:10×10的游戲地圖中有10個(gè)地雷,地雷的分布必須具有隨機(jī)性,所以對10個(gè)地雷的位置使用隨機(jī)函數(shù)來進(jìn)行設(shè)置,同時(shí)要注意生成的代表地雷位置的隨機(jī)數(shù)不能重復(fù)。最后一同設(shè)計(jì)出主要代碼,參考如下:

      zhdshu = 10 '地雷總數(shù)

      Dim tmp(10) As Integer

      t = 0

      While t < 10

      biaozhi = 0 '用于標(biāo)識當(dāng)前控件是否有雷

      linshishu = Int(Rnd * 100)

      For i = 0 To t

      If tmp(i) = linshishu Then

      biaozhi = 1

      Exit For

      End If

      Next i

      If biaozhi = 0 Then

      t = t + 1

      tmp(t) = linshishu

      End If

      Wend

      For i = 1 To 10

      zha(tmp(i) \ 10 + 1, (tmp(i) Mod 10) + 1) = 1

      Next i

      ④對設(shè)計(jì)進(jìn)行小結(jié),引導(dǎo)學(xué)生一起歸納地雷分布設(shè)計(jì)過程中,將代碼與界面進(jìn)行關(guān)聯(lián)的設(shè)計(jì)要點(diǎn),并回顧隨機(jī)數(shù)知識點(diǎn)。

      3)游戲中點(diǎn)擊控件按鈕,地雷顯示

      ①首先提出關(guān)鍵問題引導(dǎo)學(xué)生思考:在按鈕上點(diǎn)擊鼠標(biāo)左鍵需要顯示其周圍有幾個(gè)地雷,如何計(jì)算?游戲中如何判斷是否獲勝?

      ②地雷個(gè)數(shù)的計(jì)算:在按鈕上點(diǎn)擊鼠標(biāo)左鍵后,界面上需要顯示其周圍有幾個(gè)地雷,地雷個(gè)數(shù)的計(jì)算問題可以轉(zhuǎn)換為判斷當(dāng)前點(diǎn)擊的按鈕所對應(yīng)的行列數(shù),即對應(yīng)的二維數(shù)組元素周圍的8個(gè)按鈕有幾個(gè)地雷。一同設(shè)計(jì)出主要代碼,參考如下:

      Dim hang As Integer, lie As Integer, shuzi As Integer

      hang = Int(Index / 10) + 1

      lie = (Index Mod 10) + 1

      '判斷當(dāng)前點(diǎn)擊按鈕的周圍有幾個(gè)地雷,并顯示出來

      shuzi = 0

      For i = hang - 1 To hang + 1

      For j = lie - 1 To lie + 1

      If i >= 1 And i <= 10 And j >= 1 And j <= 10 And (Not (i = hang And j = lie)) Then

      '判定周圍是否有按鈕

      If zha(i, j) = 1 Then

      shuzi = shuzi + 1

      End If

      End If

      Next j

      Next i

      cmd(Index).Caption = shuzi '顯示有幾個(gè)地雷

      ③判斷獲勝

      引導(dǎo)學(xué)生分析出設(shè)計(jì)方案:用戶已經(jīng)標(biāo)識出所有地雷,標(biāo)示正確了就算贏,所以程序中我們只需要判斷是否zha數(shù)組中所有的等于1的元素,在界面上顯示的標(biāo)志是符號"●",并且顯示的地雷總數(shù)是10個(gè)。然后和學(xué)生一同設(shè)計(jì)出程序代碼。

      ④對設(shè)計(jì)進(jìn)行小結(jié),引導(dǎo)學(xué)生一起歸納控件數(shù)組共享事件代碼的編程方式,重點(diǎn)加強(qiáng)學(xué)生理解控件數(shù)組中各個(gè)控件既獨(dú)立又統(tǒng)一的設(shè)計(jì)特點(diǎn)。

      4)游戲中排雷錯(cuò)誤處理

      引導(dǎo)學(xué)生分析出設(shè)計(jì)方案:如果游戲中,用戶點(diǎn)擊錯(cuò)了,則應(yīng)該顯示所有的雷,這個(gè)過程我們只需要遍歷zha數(shù)組,如果數(shù)組元素等于1,則是地雷,顯示出來即可。一同設(shè)計(jì)出主要代碼,參考如下:

      If zha(hang, lie) = 1 Then

      For i = 1 To 10

      For j = 1 To 10

      If zha(i, j) = 1 Then

      cmd(i * 10 - 10 + j - 1).Caption = "●"

      End If

      Next j

      Next i

      Exit Sub

      End If

      5)游戲優(yōu)化

      基本功能設(shè)計(jì)結(jié)束后,引導(dǎo)學(xué)生對案例中部分代碼進(jìn)行優(yōu)化設(shè)計(jì)。

      ①將求按鈕周圍地雷數(shù)量編寫為函數(shù),引導(dǎo)學(xué)生一同設(shè)計(jì)函數(shù)代碼,參考代碼如下:

      Private Function qiugeshu(suoyin As Integer) As Integer

      numhang = Int(suoyin / 10) + 1 ‘找出控件數(shù)組元素對應(yīng)的行列信息

      numlie = (suoyin Mod 10) + 1

      shuzi = 0

      For i = numhang - 1 To numhang + 1

      For j = numlie - 1 To numlie + 1

      If i >= 1 And i <= 10 And j >= 1 And j <= 10 And _

      (Not (i = numhang And j = numlie)) Then

      If zha(i, j) = 1 Then

      shuzi = shuzi + 1

      End If

      End If

      Next j

      Next i

      qiugeshu = shuzi

      End Function

      ②采用遞歸實(shí)現(xiàn)掃雷游戲過程的連續(xù)排雷處理功能,每次點(diǎn)擊,對被點(diǎn)擊按鈕周圍的按鈕進(jìn)行處理,引導(dǎo)學(xué)生一同設(shè)計(jì)函數(shù)代碼,參考代碼如下:

      Private Sub fun(suoyin1 As Integer)

      numhang = Int(suoyin1 / 10) + 1

      numlie = (suoyin1 Mod 10) + 1

      cmd(suoyin1).Caption = qiugeshu(suoyin1)

      '遍歷周圍的8個(gè)

      If qiugeshu(suoyin1) = 0 Then

      For i = numhang - 1 To numhang + 1

      For j = numlie - 1 To numlie + 1

      If i >= 1 And i <= 10 And j >= 1 And j <= 10 And _

      (Not (i = numhang And j = numlie)) Then

      If Not IsNumeric(cmd((i - 1) * 10 + j - 1).Caption) Then

      fun ((i - 1) * 10 + j - 1)

      End If

      End If

      Next j

      Next i

      End If

      End Sub

      ③對優(yōu)化設(shè)計(jì)進(jìn)行小結(jié),復(fù)習(xí)遞歸程序的設(shè)計(jì),引導(dǎo)學(xué)生一起歸納應(yīng)用控件數(shù)組解決項(xiàng)目設(shè)計(jì)問題的特點(diǎn):在方案設(shè)計(jì)上,可批量處理大量重復(fù)或功能相近的控件;在代碼設(shè)計(jì)上,利用for-next循環(huán)結(jié)構(gòu),可以方便地為控件數(shù)組的各個(gè)元素設(shè)置屬性等。

      3 結(jié)論

      案例教學(xué)以其與實(shí)際聯(lián)系緊密、操作性強(qiáng)的特點(diǎn)架起了理論與實(shí)踐的橋梁。相對單純講解理論知識并簡單演示的傳統(tǒng)教學(xué),將案例教學(xué)法應(yīng)用于VB教學(xué)過程的最大優(yōu)勢在于以案例為課堂教學(xué)基本支撐點(diǎn),將學(xué)生引人一個(gè)特定的相對真實(shí)的軟件設(shè)計(jì)情境中,通過師生、生生之間的共同探討,逐步剖析、層層推進(jìn)的解決問題,在整個(gè)教學(xué)過程中激發(fā)學(xué)生的學(xué)習(xí)積極性,培養(yǎng)學(xué)生的分析問題和解決問題的能力,幫助學(xué)生將理論知識轉(zhuǎn)化為實(shí)踐能力,經(jīng)過多年的探索和實(shí)踐取得了很好的教學(xué)效果。

      參考文獻(xiàn):

      [1] 丁海燕.Visual Basic程序設(shè)計(jì)課程實(shí)踐教學(xué)模式的探討[J].實(shí)驗(yàn)室研究與探索.2013,32(10):431-433

      [2]黃爽.VB程序設(shè)計(jì)與應(yīng)用課程項(xiàng)目教學(xué)法的實(shí)施[J].遼寧高職學(xué)報(bào),2010,12(10):45-46.

      [3]胡緒英.VB中控件數(shù)組及其應(yīng)用[J].軟件導(dǎo)刊.2014,13(10):20-22.

      [4]譚浩強(qiáng).visualBasic程序設(shè)計(jì)案例教程[M].北京:清華大學(xué)出版社,2012.

      [5]楊鈞.如何在計(jì)算機(jī)教學(xué)中激發(fā)學(xué)生學(xué)習(xí)興趣[J].遼寧中醫(yī)藥大學(xué)學(xué)報(bào),2006(8):65-67.

      [6] 葉子,龐麗娟.試論師生互動模式形成的基本過程[J].教育研究,2009(2).

      猜你喜歡
      案例設(shè)計(jì)案例教學(xué)法
      重慶市政府債務(wù)風(fēng)險(xiǎn)案例研究設(shè)計(jì)
      案例教學(xué)法在《思想道德修養(yǎng)與法律基礎(chǔ)》法律部分教學(xué)的運(yùn)用
      廣告學(xué)專業(yè)《社會學(xué)概論》教學(xué)研究
      案例教學(xué)法在高等職業(yè)院校口腔內(nèi)科學(xué)教學(xué)中的應(yīng)用效果
      案例教學(xué)法在高職經(jīng)濟(jì)數(shù)學(xué)教學(xué)中的應(yīng)用
      案例教學(xué)法在技校企業(yè)會計(jì)課教學(xué)中的運(yùn)用策略探討
      中國市場(2016年35期)2016-10-19 02:52:05
      房地產(chǎn)項(xiàng)目策劃課程案例教學(xué)探索與實(shí)施
      一對一個(gè)性化教學(xué)對高中生英語學(xué)習(xí)興趣的案例研究分析
      案例教學(xué)在統(tǒng)計(jì)學(xué)教學(xué)中的應(yīng)用與探索
      考試周刊(2016年18期)2016-04-14 09:38:54
      游戲案例在面向?qū)ο蟪绦蛟O(shè)計(jì)教學(xué)中的應(yīng)用
      福建省| 建水县| 盈江县| 封开县| 高唐县| 汕尾市| 稻城县| 瓦房店市| 哈密市| 溧水县| 丹阳市| 运城市| 唐河县| 延寿县| 孟村| 龙口市| 鄂尔多斯市| 鹿邑县| 阿荣旗| 慈溪市| 隆尧县| 大渡口区| 泰顺县| 铜川市| 积石山| 蓬安县| 天气| 淳安县| 东源县| 扬州市| 高要市| 吉安市| 沂源县| 洪湖市| 丰都县| 博罗县| 辽宁省| 西畴县| 天水市| 龙陵县| 遵义市|