丁海燕
摘要:Visual Basic程序設(shè)計(jì)是高校面向非計(jì)算機(jī)專業(yè)開設(shè)的一門公共基礎(chǔ)課,旨在培養(yǎng)理科生的Windows應(yīng)用程序開發(fā)能力,以解決專業(yè)上的實(shí)際問題。文章分析Visual Basic的情感教學(xué)、案例教學(xué)和教學(xué)內(nèi)容的結(jié)構(gòu)性,注重從學(xué)生學(xué)習(xí)情感、教學(xué)方法和教學(xué)內(nèi)容體系等方面進(jìn)行探討。
關(guān)鍵詞:VB;程序設(shè)計(jì);案例教學(xué);情感教學(xué);結(jié)構(gòu)性教學(xué)
0.引言
隨著計(jì)算機(jī)技術(shù)在各個(gè)領(lǐng)域的推廣、普及,掌握計(jì)算機(jī)技術(shù)、學(xué)會(huì)利用信息資源是對(duì)21世紀(jì)人才素質(zhì)的基本要求。國家教育部根據(jù)高等院校非計(jì)算機(jī)專業(yè)的計(jì)算機(jī)培養(yǎng)目標(biāo),提出了計(jì)算機(jī)文化基礎(chǔ)、計(jì)算機(jī)技術(shù)基礎(chǔ)和計(jì)算機(jī)應(yīng)用基礎(chǔ)3個(gè)層次的課程體系。
Visual Basic(VB)程序設(shè)計(jì)作為高校公共計(jì)算機(jī)程序設(shè)計(jì)基礎(chǔ)課,屬于非計(jì)算機(jī)專業(yè)3個(gè)課程體系層次中的第2個(gè)層次課程。無論是開發(fā)功能強(qiáng)大、性能可靠的軟件,還是編寫處理實(shí)際問題的實(shí)用小程序,Visual Basic都是一種高效率的編程語言。Visual Basic程序設(shè)計(jì)的教學(xué)任務(wù)是培養(yǎng)學(xué)生高級(jí)語言程序設(shè)計(jì)的能力,使學(xué)生掌握面向?qū)ο蟮某绦蛟O(shè)計(jì)思想和方法,掌握使用Visual Basic開發(fā)Windows應(yīng)用程序的一般方法,能夠運(yùn)用所學(xué)的知識(shí)開發(fā)圖形用戶界面的應(yīng)用軟件,從而達(dá)到學(xué)生能夠結(jié)合自身專業(yè)進(jìn)行軟件開發(fā)的目的。
VB程序設(shè)計(jì)課程特點(diǎn)是概念繁多、算法抽象、邏輯性強(qiáng),在實(shí)際教學(xué)過程中學(xué)生容易感到程序設(shè)計(jì)枯燥、難懂,學(xué)習(xí)興趣缺失,教學(xué)效果并不理想。如何在計(jì)算機(jī)程序設(shè)計(jì)教學(xué)中提高學(xué)生學(xué)習(xí)興趣,培養(yǎng)編程與創(chuàng)新能力,是廣大計(jì)算機(jī)教師需要不斷探索的課題。
1.VB教學(xué)中存在的問題及思考
VB程序設(shè)計(jì)包括界面設(shè)計(jì)和代碼設(shè)計(jì)兩部分??梢暬慕缑嬖O(shè)計(jì)實(shí)現(xiàn)不難掌握,但代碼編寫較難。教學(xué)中學(xué)生普遍存在的主要問題有:①由于學(xué)生第一次接觸編程,普遍缺乏相應(yīng)的邏輯思維和算法思想,加之VB涉及的概念比較繁雜,控件的屬性、事件、方法較多,學(xué)生掌握不熟練,學(xué)習(xí)存在一定困難;②學(xué)生對(duì)解決問題的思路和方法即算法掌握得不太好;③學(xué)習(xí)興趣不足,有畏難情緒,進(jìn)入編程狀態(tài)比較慢;④學(xué)生重課本、輕實(shí)踐,課外自學(xué)以及分析、解決問題的能力較為薄弱。
從教師角度而言,講授該課程應(yīng)注重使學(xué)生掌握程序設(shè)計(jì)的基本方法、思路和技術(shù)內(nèi)涵,有兩方面的問題值得思考:①為解決程序設(shè)計(jì)枯燥難懂的問題,在教學(xué)過程中如何將抽象的概念和理論轉(zhuǎn)化為形象生動(dòng)的知識(shí)講解給學(xué)生,即如何提高學(xué)生的學(xué)習(xí)興趣,從而引導(dǎo)學(xué)生自主學(xué)習(xí);②教材內(nèi)容較多,VB語法規(guī)則繁多、使用靈活,如何才能避免教學(xué)陷入語法細(xì)節(jié),體現(xiàn)知識(shí)點(diǎn)的關(guān)聯(lián)性和教學(xué)的整體結(jié)構(gòu)性。
2.VB的情感教學(xué)
VB程序設(shè)計(jì)作為一種高級(jí)程序設(shè)計(jì)語言是人與計(jì)算機(jī)溝通的方式,解決問題的思維方式與我們?nèi)粘2煌?。不少學(xué)生在較短的學(xué)習(xí)周期內(nèi)無法逾越這個(gè)障礙,造成挫折感一步步加強(qiáng),導(dǎo)致學(xué)習(xí)興趣進(jìn)一步下降。
目前VB程序設(shè)計(jì)普遍采用的是“多媒體教學(xué)+上機(jī)實(shí)習(xí)”的教學(xué)方式,教師課堂上忙于講解各種控件的屬性、事件和方法以及函數(shù)、表達(dá)式、結(jié)構(gòu)化程序設(shè)計(jì)語句、VB命令和語法等。這樣的方式以教師講授為主導(dǎo),偏重學(xué)習(xí)者理性思維的訓(xùn)練,卻嚴(yán)重忽視了學(xué)習(xí)者情感智能的發(fā)展?,F(xiàn)代腦科學(xué)研究表明,情感與注意、記憶、推理和決策過程緊密關(guān)聯(lián),情緒是推理過程的組成要素,它可以協(xié)助推理,甚至在某些情況下可以代替推理,即如果學(xué)生在VB學(xué)習(xí)過程中的某些問題得不到解決,在心理上存在困惑而得不到幫助,長時(shí)間面對(duì)VB枯燥抽象的概念和命令而感受不到交互的樂趣和情感的激勵(lì)時(shí),就會(huì)產(chǎn)生反感情緒。
計(jì)算機(jī)教學(xué)的特點(diǎn)是概念抽象,技術(shù)性和實(shí)踐性較強(qiáng),教師往往專注于知識(shí)和技術(shù)本身的傳遞,局限于言語溝通的知識(shí)交流中,而缺失目光的接觸、肢體語言、面部表情和其他非語言的交流信息,這樣很容易導(dǎo)致情感溝通的缺乏。情感缺失所帶來的不良后果是認(rèn)知與情感的失衡,導(dǎo)致無效或低效學(xué)習(xí)。因此,在VB課堂上,教師要十分注重學(xué)生的反應(yīng)和與學(xué)生之間的互動(dòng),充分利用案例教學(xué)和項(xiàng)目教學(xué)法,做到生動(dòng)教學(xué)。
3.VB的案例教學(xué)
課堂教學(xué)是傳授知識(shí)和培養(yǎng)學(xué)生能力的主要渠道,是提高教學(xué)質(zhì)量的中心環(huán)節(jié)。VB程序設(shè)計(jì)教材的主要內(nèi)容包括VB集成開發(fā)環(huán)境VisualBasic6.0介紹,數(shù)據(jù)類型、運(yùn)算符與表達(dá)式,3種結(jié)構(gòu)化程序設(shè)計(jì)語句(順序、分支和循環(huán)),一維和二維數(shù)組,函數(shù)、多媒體、文件以及數(shù)據(jù)庫編程。教材內(nèi)容的組織雖然按照知識(shí)點(diǎn)進(jìn)行了歸類,但知識(shí)點(diǎn)分散、跨度大,概念多、分析少,語言不夠形象,較難理解。
如果按照課本原有順序組織教學(xué),一開始介紹面向?qū)ο蟪绦蛟O(shè)計(jì)的概念,諸如對(duì)象,對(duì)象的屬性、方法、事件,事件驅(qū)動(dòng)等一系列比較抽象難懂的概念,學(xué)生就會(huì)覺得非常枯燥、單調(diào),甚至喪失學(xué)習(xí)興趣。因此,在教學(xué)過程中,應(yīng)該按照學(xué)生的認(rèn)知規(guī)律,從淺入深、從簡單到復(fù)雜,抓住圖形用戶界面和事件驅(qū)動(dòng)這一教學(xué)主線。例如,在第一堂課上,先不講對(duì)象3要素(屬性、方法和事件)的定義,而是演示一個(gè)實(shí)例,輸入兩個(gè)數(shù),實(shí)現(xiàn)求和并輸出結(jié)果,讓學(xué)生在實(shí)際操作過程中從直觀上感悟這些概念,然后再和學(xué)生一起歸納總結(jié)。這樣,學(xué)生獲得的知識(shí)和概念不是照本宣科的定義,而是運(yùn)用歸納法產(chǎn)生的內(nèi)化新知識(shí)。操作步驟如下:
(1)新建工程,新建兩個(gè)窗體fonnl和form2:
(2)在forml窗體上添加3個(gè)標(biāo)簽、3個(gè)文本框和3個(gè)命令按鈕;
(3)分別設(shè)置各對(duì)象的屬性(如標(biāo)簽文本、按鈕文本、字體、顏色等);
(4)分別雙擊forml窗體上的3個(gè)命令按鈕,進(jìn)入代碼窗口并輸入下列程序:
Private Sub Commandl_Click()
Dimx!,y!
x=Textl,Text
y=Text2,Text
Text3.Text=x+y
Forml.print“hello world!”
End Sub
Private Sub Command3_Click0
Form2.Show
Form2.BackColor=RGB(255,255,255)
Form2.Print“hello world!”
Form2.Print“hello world!”
End Sub
學(xué)生在操作過程中很自然地就能理解什么是對(duì)象,什么是對(duì)象的屬性、方法和事件,什么是事件驅(qū)動(dòng)機(jī)制,如何在窗體上添加對(duì)象、編寫事件代碼等。教師適當(dāng)引導(dǎo)學(xué)生得出新概念,如標(biāo)簽、文本框、按鈕是不同的對(duì)象;每個(gè)對(duì)象的外觀可以通過各自的屬性來控制;屬性設(shè)置可以有兩種方法,一種是在窗體上選中對(duì)象,在屬性窗口設(shè)置相應(yīng)屬性,另一種是在代碼窗口通過編程設(shè)置,如Form2,BackColor=RGB(255,255,255)。對(duì)象的方法是對(duì)象本身具有的、實(shí)現(xiàn)對(duì)象功能的特殊過程或函數(shù)(如print,show)。print方法實(shí)現(xiàn)在窗體上的輸出,show方法實(shí)現(xiàn)顯示窗體,引用對(duì)象的屬性和方法的格式為:對(duì)象名,屬性名,對(duì)象名,方法名。事件是對(duì)象所得到的動(dòng)作(單擊Click事件),按鈕最常用的事件是單擊事件。運(yùn)行程序時(shí),用戶單擊哪個(gè)按鈕就執(zhí)行對(duì)應(yīng)的事件處理程序,完成相應(yīng)功能,這就稱為事件驅(qū)動(dòng)的編程機(jī)制。
通過這一教學(xué)實(shí)例,對(duì)象的三要素(屬性、事件、方法)這一抽象難懂的概念就變得生動(dòng)具體,并且學(xué)生還領(lǐng)會(huì)到了對(duì)象三要素之間的聯(lián)系和引用方法。在此基礎(chǔ)上,最后歸納總結(jié)編寫VB程序的5個(gè)基本步驟,即設(shè)計(jì)應(yīng)用程序界面、設(shè)置對(duì)象的屬性、編寫相應(yīng)的事件過程代碼、保存和運(yùn)行程序、生成EXE可執(zhí)行文件。在學(xué)生體驗(yàn)到編程的樂趣后,接下來的實(shí)驗(yàn)課可以讓學(xué)生嘗試獨(dú)立編程。
案例教學(xué)法即以任務(wù)為主導(dǎo),把每堂課的教學(xué)內(nèi)容設(shè)計(jì)成一個(gè)個(gè)具體的實(shí)例。教師每次上課首先展示一個(gè)程序?qū)嵗?,該?shí)例包括當(dāng)天所要講的新控件、新語句;然后講解實(shí)現(xiàn)這一程序的基本思路,提出算法,由淺入深,引導(dǎo)學(xué)生主動(dòng)思考。案例教學(xué)在講解過程中重新對(duì)內(nèi)容進(jìn)行了歸納總結(jié),將難點(diǎn)分散,達(dá)到了循序漸進(jìn)的效果,也極大地激發(fā)了學(xué)生的學(xué)習(xí)興趣。
4.注重理論聯(lián)系實(shí)際
為了增強(qiáng)學(xué)生對(duì)VB程序設(shè)計(jì)的學(xué)習(xí)興趣,教師應(yīng)避免第一次課就開始講授基本理論、基本概念,可以為學(xué)生展示一些由VB開發(fā)的一些難度適中的小軟件、小游戲,如九九乘法表、龜兔賽跑、歌手評(píng)分、計(jì)算器、通訊錄、時(shí)鐘計(jì)時(shí)、小學(xué)生整數(shù)的加減運(yùn)算、用戶登錄等。此外,為了開闊學(xué)生的視野,還要注重理論聯(lián)系實(shí)際,可以演示用VB編程實(shí)現(xiàn)各種分形圖形的生成,介紹VB在Office中的使用等。例如,在利用Powerpoint制作課件時(shí),用VB編程實(shí)現(xiàn)當(dāng)用戶單擊某一選擇題的選項(xiàng)時(shí),會(huì)即時(shí)出現(xiàn)該選項(xiàng)是否正確的提示。通過這個(gè)案例,學(xué)生不僅提高了PPT的制作技巧,還學(xué)會(huì)了VB編程,可謂一舉兩得。用VB控件制作選擇題的PPT界面如圖1所示。
選項(xiàng)A和B的VB程序代碼如下所示,選項(xiàng)C和D的代碼與選項(xiàng)A相同。
Private Sub A_Click0
IfA.Value=True Then ex=MsgBox("正確答案是B?!保瑅bOKOnly)
End Sub
Private Sub B_Click()
If B.Value=True Then ex=MsgBox(“Very Good!”,vbOKOnly)
End Sub
5.VB教學(xué)內(nèi)容的結(jié)構(gòu)性
教育學(xué)家布魯納指出:不論我們教的內(nèi)容是什么,首先都應(yīng)該使學(xué)習(xí)者理解(掌握)該學(xué)習(xí)內(nèi)容的基本結(jié)構(gòu)。他還指出結(jié)構(gòu)是知識(shí)構(gòu)成的基本架構(gòu),具有結(jié)構(gòu)性的教學(xué)內(nèi)容更易于學(xué)生理解,并且學(xué)后不容易遺忘,而學(xué)生從結(jié)構(gòu)中所學(xué)到的原理、原則有助于在以后類似情境中產(chǎn)生正向?qū)W習(xí)遷移。因此,在VB的教學(xué)過程中也要注意教學(xué)內(nèi)容的結(jié)構(gòu)性。云南大學(xué)制定了相適應(yīng)的教學(xué)內(nèi)容體系,包括三大版塊:①基礎(chǔ)版塊,包括VB開發(fā)環(huán)境、基本語法,3種程序控制結(jié)構(gòu)、數(shù)組、過程,常用控件的使用等,要求學(xué)生掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思想和方法,教師強(qiáng)化基礎(chǔ)重點(diǎn)知識(shí)教學(xué),弱化全局變量、多文檔界面、二進(jìn)制文件等章節(jié)。②綜合應(yīng)用版塊,涉及圖形用戶界面設(shè)計(jì),包括菜單、工具欄和文件操作等內(nèi)容;③提高版塊,包括數(shù)據(jù)庫編程技術(shù)、圖形生成、多媒體編程技術(shù)、應(yīng)用程序的開發(fā)過程等,是整個(gè)教學(xué)內(nèi)容體系中的提高部分,這部分內(nèi)容可布置一些綜合性的項(xiàng)目作業(yè)使學(xué)生對(duì)VB應(yīng)用系統(tǒng)開發(fā)技術(shù)有更深入的了解。
6.結(jié)語
總之,在教學(xué)過程中,精心設(shè)計(jì)教學(xué)案例,注重與學(xué)生的情感交流,創(chuàng)建活躍的課堂氣氛,采取符合學(xué)生認(rèn)知規(guī)律的教學(xué)方法,注重教學(xué)由淺人深,采用結(jié)構(gòu)性的教學(xué)體系,改革考試方式,加強(qiáng)上機(jī)實(shí)踐的管理,才能獲得最佳的教學(xué)效果。
(編輯:宋文婷)