石敏力
(遵義師范學(xué)院計(jì)算機(jī)與信息科學(xué)學(xué)院,貴州遵義563002)
《VB語言程序設(shè)計(jì)基礎(chǔ)》是我院從2010年開始面向全院大一理科(除體育系以外)學(xué)生開設(shè)的計(jì)算機(jī)公共必修課程,這是非計(jì)算機(jī)專業(yè)理科學(xué)生進(jìn)入大學(xué)以來的第一門計(jì)算機(jī)相關(guān)課程。學(xué)生對這門課程的學(xué)習(xí)效果將嚴(yán)重影響他們在大學(xué)階段對計(jì)算機(jī)的學(xué)習(xí)興趣。因此,如何上好這門課程是計(jì)算機(jī)公共課教學(xué)的關(guān)鍵問題。
《VB語言程序設(shè)計(jì)》不僅是非計(jì)算機(jī)專業(yè)理科學(xué)生的一門計(jì)算機(jī)公共必修課程,而且VB作為計(jì)算機(jī)等級考試(二級)的考試內(nèi)容之一,一直是非計(jì)算機(jī)專業(yè)學(xué)生拿計(jì)算機(jī)等級考試合格證首選的一個科目。VB語言雖然是一門可視化的程序設(shè)計(jì)語言,但是對于大部分剛進(jìn)入大學(xué)的學(xué)生來說,它也是一門比較難的計(jì)算機(jī)語言課程。要做好這門課程的教學(xué)設(shè)計(jì),首先要對學(xué)生的具體情況有一定程度的了解。
《VB語言程序設(shè)計(jì)基礎(chǔ)》課的先修課程是學(xué)生中學(xué)階段學(xué)習(xí)的《信息技術(shù)基礎(chǔ)》。我曾經(jīng)對10級大一新生進(jìn)行過抽樣調(diào)查,調(diào)查結(jié)果顯示:這門課程對于中學(xué)來說開設(shè)情況不容樂觀。整個被調(diào)查的學(xué)生中有78%的同學(xué)認(rèn)為中學(xué)階段的《信息技術(shù)》課就是讓他們玩游戲和自由上機(jī)的時間,老師幾乎不講授教學(xué)內(nèi)容,還有部分農(nóng)村的學(xué)生幾乎沒接觸過計(jì)算機(jī)[1]。在這樣的情況下,讓學(xué)生通過60個學(xué)時學(xué)會基本的程序設(shè)計(jì)思想對老師和學(xué)生來說都是一種挑戰(zhàn)。
程序設(shè)計(jì)語言課程的要求是讓學(xué)生掌握程序設(shè)計(jì)的基礎(chǔ)知識和基本的編程技術(shù),讓他們學(xué)會程序設(shè)計(jì)的基本方法。程序設(shè)計(jì)的基礎(chǔ)知識一般都是抽象的理論概念,而編程技術(shù)除了與程序語言本身的語法和設(shè)計(jì)思路有關(guān)外,還與學(xué)生的數(shù)學(xué)理解能力和英語基礎(chǔ)有著直接的聯(lián)系。大部分學(xué)生都認(rèn)為抽象概念、復(fù)雜的算法和英語不好理解和掌握,因而從思想上就對這門課程產(chǎn)生了畏懼。
我院開設(shè)這門課程的學(xué)時數(shù)為60學(xué)時,其中理論30學(xué)時,上機(jī)30學(xué)時?!禫B語言程序設(shè)計(jì)基礎(chǔ)》是一門考查科目,這就意味著60學(xué)時里面包含了期末考試時間。在每個學(xué)期的教學(xué)中,除了國家法定節(jié)日放掉的課時、期末考試和全面復(fù)習(xí)的時間,真正用于學(xué)生上課的時間一般只有52學(xué)時。用52學(xué)時(理論26學(xué)時+上機(jī)26學(xué)時)讓幾乎沒有一點(diǎn)程序設(shè)計(jì)基礎(chǔ)的學(xué)生掌握程序設(shè)計(jì)的方法,這就要求教師在教學(xué)設(shè)計(jì)時要多深入研究和反復(fù)探索。
我們每個班級的人數(shù)通常都是五十人以上,學(xué)生在上機(jī)練習(xí)的過程中,只有一位老師指導(dǎo)。這讓很多基礎(chǔ)差但好學(xué)的同學(xué)不能及時得到老師的指導(dǎo),造成他不懂的知識越積越多;另一方面由于上機(jī)的機(jī)房在課余時間就是網(wǎng)吧,很多學(xué)生無法抵擋游戲和網(wǎng)絡(luò)的誘惑。
不管使用哪個版本的VB程序設(shè)計(jì)教材,第一章都是讓學(xué)生對VisualBasic有一個初步認(rèn)識,這是學(xué)生學(xué)習(xí)《VB語言程序設(shè)計(jì)》課程的第一次課,這次課教學(xué)設(shè)計(jì)的好壞將對學(xué)生學(xué)習(xí)這門課程甚至是學(xué)習(xí)計(jì)算機(jī)相關(guān)課程都有決定性的影響。第一章設(shè)定的學(xué)時數(shù)為2節(jié)理論課和2節(jié)上機(jī)課,這一章的內(nèi)容包括了許多抽象的VB語言相關(guān)概念和利用VB進(jìn)行程序設(shè)計(jì)的基本步驟介紹等基礎(chǔ)性知識。因此在進(jìn)行教學(xué)設(shè)計(jì)時既要讓學(xué)生理解基本概念及基本的程序設(shè)計(jì)知識,又要激發(fā)學(xué)生對這門課程的學(xué)習(xí)興趣。
學(xué)生對第一章內(nèi)容是否理解將直接影響他們對這門課程的學(xué)習(xí)積極性和對VB程序設(shè)計(jì)的認(rèn)識。因此在進(jìn)行教學(xué)設(shè)計(jì)時把原來的2學(xué)時理論+2學(xué)時上機(jī)改為現(xiàn)在的4學(xué)時理論+4學(xué)時上機(jī)。
這一章的教學(xué)目標(biāo)包括:理解VB的基本概念如類、對象、屬性、方法和事件等;熟悉VB編程環(huán)境,窗體及常用基本控件,利用VB編程的基本步驟。
教學(xué)重點(diǎn)是VB程序設(shè)計(jì)的基本操作步驟;教學(xué)難點(diǎn)是可視化編程的基本概念。
為了能夠突破教學(xué)重難點(diǎn),在實(shí)際教學(xué)過程中要充分運(yùn)用多種教學(xué)方法。
3.4.1 講解法——利用學(xué)生已有的經(jīng)驗(yàn)知識幫助他們理解抽象概念
這里使用的講解法,不是照本宣科,而是在講解的同時充分利用學(xué)生已有的經(jīng)驗(yàn)知識幫助他們理解抽象概念。在學(xué)習(xí)VB程序設(shè)計(jì)時,學(xué)生首先要理解的就是一些抽象概念。這些抽象概念如果讓學(xué)生死記硬背不利于后面課程的學(xué)習(xí)。因此,可以從日常生活中尋找合適的知識,幫助學(xué)生理解這些新概念。
比如在學(xué)習(xí):類、對象、屬性、方法和事件等抽象概念時,課本上給出的定義是:對象是指現(xiàn)實(shí)世界中具體存在的實(shí)體,每一個對象都有反映自身特征的屬性,對象還有附屬于它的行為(稱為方法),在對象身上可能會發(fā)生某種動作(稱為事件)[2]。這些概念可以以汽車為例來幫助學(xué)生理解,任意一輛汽車我們稱為“對象”,所有“汽車”組成了“汽車類”,汽車的顏色、高度、速度等就是汽車這一對象的屬性,行駛中的汽車“停車”就是汽車的一種行為,所以“停車”屬于方法,而產(chǎn)生這一方法的事件是“踩剎車”。
3.4.2 案例教學(xué)法,運(yùn)用經(jīng)典實(shí)例,激發(fā)學(xué)生學(xué)習(xí)熱情
如我們在向?qū)W生介紹創(chuàng)建VB應(yīng)用程序的主要步驟時,如果讓學(xué)生單純的記憶創(chuàng)建程序的6個步驟,學(xué)生會覺得不好理解,而我們通過一個具體的創(chuàng)建實(shí)例,如在“文本框”中輸入數(shù)字,單擊“計(jì)算”按鈕顯示其階乘(如圖1所示)。在這個實(shí)例中首先在窗體上放置標(biāo)簽、文本框和命令按鈕這三種控件,告訴學(xué)生創(chuàng)建VB應(yīng)用程序的第一步是創(chuàng)建應(yīng)用程序的界面;接下來學(xué)生都認(rèn)為創(chuàng)建的界面不夠美觀,控件上也沒有任何信息,這就需要設(shè)置控件的大小、顏色、文字等屬性,設(shè)置界面上各個對象的屬性就是程序創(chuàng)建的第二步;界面設(shè)置完成后,要讓程序完成指定的功能就必須添加代碼,因此,程序創(chuàng)建的第三步就是編寫對象響應(yīng)的程序代碼;第四步當(dāng)然就是要保存我們完成的工作,即保存工程;設(shè)計(jì)的程序能否正常工作,就要通過第五步運(yùn)行和調(diào)試程序;VB語言創(chuàng)建的是一個應(yīng)用程序,而應(yīng)用程序就是一個可執(zhí)行文件,因此最后一步當(dāng)然是生成可執(zhí)行程序。這樣,我們通過一個具體實(shí)例的創(chuàng)建,歸納出VB創(chuàng)建應(yīng)用程序的6個步驟。
圖1 創(chuàng)建VB應(yīng)用程序?qū)嵗龍D
3.4.3 上機(jī)操作法——借助教學(xué)管理軟件加強(qiáng)上機(jī)監(jiān)督
學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)離不開上機(jī)操作練習(xí),要讓學(xué)生認(rèn)真完成上機(jī)操作練習(xí)除了提高學(xué)生的學(xué)習(xí)自覺性外老師也要加強(qiáng)管理。為了利用網(wǎng)絡(luò)上豐富的共享資源,學(xué)生在上機(jī)時,機(jī)房的網(wǎng)絡(luò)連接是沒有中斷的,這就讓很多沒有自制力的同學(xué)只想玩電腦游戲而不進(jìn)行上機(jī)練習(xí)。為了能夠?qū)W(xué)生上機(jī)操作練習(xí)進(jìn)行管理監(jiān)督,教師可使用“凌波”、“極域”等教學(xué)管理軟件。這類軟件可以讓教師看到每個學(xué)生的電腦屏幕上顯示的內(nèi)容,對于玩電腦游戲的同學(xué)可以及時制止。
要想真正掌握計(jì)算機(jī)相關(guān)課程,就要不斷地進(jìn)行實(shí)踐練習(xí)。因此作者給4節(jié)上機(jī)操作課布置了兩個任務(wù)。
任務(wù)一(2學(xué)時):制作如圖2所示的小程序界面,這個任務(wù)雖然沒有任何程序設(shè)計(jì)的內(nèi)容,但通過這個任務(wù)的完成可讓學(xué)生對VB的集成環(huán)境有一個直觀認(rèn)識,如:“工具箱”、“屬性窗口”、“窗體”等。再通過保存這個任務(wù),全面掌握VB的操作步驟。對于已經(jīng)完成這個任務(wù)的學(xué)生可以讓他們思考如何對“屬性窗口”進(jìn)一步操作,如改變小程序的標(biāo)題欄內(nèi)容、背景等,讓學(xué)生對VB的“Visual”有一個全面的認(rèn)識,也讓學(xué)生不會感覺這門課程枯燥乏味。
圖2 實(shí)踐環(huán)節(jié)程序設(shè)計(jì)實(shí)例圖
任務(wù)二(2學(xué)時):在學(xué)生了解了VB集成環(huán)境和基本操作步驟的基礎(chǔ)上,通過邊讀邊分析實(shí)現(xiàn)第一個任務(wù)的代碼,讓學(xué)生對VB的語法結(jié)構(gòu)有一個感性上的認(rèn)識,并全面了解VB操作的步驟。
對《VB語言程序設(shè)計(jì)基礎(chǔ)》課進(jìn)行教學(xué)設(shè)計(jì)時,必須以學(xué)生的具體情況為基礎(chǔ),不僅讓有一定基礎(chǔ)的學(xué)生能夠?qū)W好,而且要讓大部分學(xué)生基本掌握程序設(shè)計(jì)的思想,培養(yǎng)他們在學(xué)習(xí)、生活中更好地利用計(jì)算機(jī)來解決問題的能力。
[1]石敏力.在校大學(xué)生的中學(xué)《信息技術(shù)》學(xué)習(xí)情況調(diào)查研究[J].軟件導(dǎo)刊,2012,(6):178-179.
[2]劉衛(wèi)國.VisualBasic程序設(shè)計(jì)教程[M].北京:北京郵電大學(xué)出版社,2010.