朱學(xué)武 馬艷玲
摘 要:Visual Basic(簡(jiǎn)稱VB)程序設(shè)計(jì)課程涉及函數(shù)、表達(dá)式、算法、程序等知識(shí),理論性很強(qiáng),邏輯性嚴(yán)密,相對(duì)于中職計(jì)算機(jī)專業(yè)學(xué)生的學(xué)習(xí)能力來(lái)說(shuō)確實(shí)難,造成學(xué)生對(duì)該課程的教學(xué)內(nèi)容不易理解。筆者從事VB課程教學(xué)十余年,在教學(xué)過(guò)程中針對(duì)該課程的特點(diǎn)和學(xué)生的狀況,因材施教,靈活運(yùn)用情景教學(xué)法和現(xiàn)代化的教學(xué)手段取得了有效的教學(xué)效果,并結(jié)合一些案例在文中與大家共享。
關(guān)鍵詞:中職計(jì)算機(jī)專業(yè) VB程序設(shè)計(jì) 情景教學(xué) 案例
Visual Basic程序設(shè)計(jì)(以下簡(jiǎn)稱VB)是一門經(jīng)典的面向?qū)ο蟮目梢暬绦蛟O(shè)計(jì)語(yǔ)言,是中職計(jì)算機(jī)專業(yè)開(kāi)設(shè)的一門必修課,也是計(jì)算機(jī)專業(yè)學(xué)生參加筆者省份單考單招的重要科目。盡管VB編程學(xué)習(xí)相對(duì)容易,編程趣味性相對(duì)較高,適合初學(xué)者。但是在教學(xué)中發(fā)現(xiàn),不少學(xué)生學(xué)會(huì)使用單個(gè)控件,而缺少綜合應(yīng)用能力,可視化編程教學(xué)中往往淡化了對(duì)傳統(tǒng)基于過(guò)程的基礎(chǔ)編程能力的培養(yǎng)。教師有時(shí)照本宣科,不重視學(xué)生實(shí)踐能力和問(wèn)題解決能力的培養(yǎng),導(dǎo)致學(xué)生學(xué)習(xí)困難;加上職高學(xué)生基礎(chǔ)薄弱,學(xué)習(xí)能力不強(qiáng),對(duì)該課程會(huì)有一定的抵觸情緒。而VB編程語(yǔ)言以數(shù)值計(jì)算、應(yīng)用為教學(xué)載體,缺少直觀、形象的生活案例,是教學(xué)中的一大難點(diǎn)。而要突破這個(gè)難點(diǎn),筆者嘗試以情境教學(xué)法進(jìn)行VB程序設(shè)計(jì)的教學(xué),取得了有效的教學(xué)效果。
一、情景教學(xué)的意義
著名教育家蘇霍姆林斯基認(rèn)為,積極的學(xué)生應(yīng)該以高度的情感參與學(xué)習(xí)和思考,他們會(huì)感受到他們學(xué)習(xí)的智慧和體驗(yàn)創(chuàng)造的快樂(lè)。可以看出,興趣是最好的教師,可以促使學(xué)生獲得知識(shí)或獨(dú)特能力的強(qiáng)烈愿望。教師可以創(chuàng)建一個(gè)生動(dòng)活潑和熱情高漲的課堂,提高學(xué)生的學(xué)習(xí)主動(dòng)性和參與度。對(duì)于中職計(jì)算機(jī)專業(yè)的學(xué)生而言, VB程序設(shè)計(jì)的教學(xué)較為抽象,學(xué)生理解較為困難,利用情境教學(xué)幫助學(xué)生學(xué)習(xí)是很有必要的。
情境教學(xué)是教師在教學(xué)過(guò)程中,創(chuàng)設(shè)美、智、趣的教學(xué)情境,連同教師情感交融在一起,使學(xué)生能夠以友好、輕松、愉快的方式參與教學(xué),了解教學(xué)內(nèi)容,消化知識(shí)點(diǎn),實(shí)現(xiàn)教學(xué)目標(biāo);從而提高學(xué)生的知識(shí)和能力水平,樹(shù)立正確的價(jià)值觀,并在道德教育中升華。如何創(chuàng)設(shè)情境?創(chuàng)設(shè)什么情境?這是情境教學(xué)的核心。筆者覺(jué)得應(yīng)讓學(xué)生置身于真實(shí)的生活場(chǎng)景中,或體驗(yàn)典型的角色,或體驗(yàn)?zāi)撤N社交感受。學(xué)生通過(guò)沉淀自己,獲得真實(shí)的現(xiàn)實(shí)感,點(diǎn)亮心中那盞學(xué)習(xí)之燈,就會(huì)主動(dòng)而積極進(jìn)行探究學(xué)習(xí)和合作學(xué)習(xí)。
VB程序設(shè)計(jì)教學(xué)應(yīng)充分考慮學(xué)生的認(rèn)知規(guī)律和學(xué)習(xí)特點(diǎn),在教學(xué)準(zhǔn)備上應(yīng)關(guān)注學(xué)習(xí)情境的創(chuàng)設(shè),教學(xué)目標(biāo)上應(yīng)注重課堂知識(shí)與技能的體驗(yàn)和生成,學(xué)習(xí)過(guò)程的探究和合作。從對(duì)VB程序設(shè)計(jì)多年教學(xué)的經(jīng)驗(yàn)幫助下,筆者嘗試了以下幾種情境教學(xué)策略。
二、情境教學(xué)策略
1.生活化的情境教學(xué)
程序是什么?這本身不是一個(gè)很抽象的概念,在生活中也經(jīng)常碰到,可以通過(guò)一兩個(gè)例子來(lái)說(shuō)明的。順序結(jié)構(gòu)是程序設(shè)計(jì)語(yǔ)言的三大基本結(jié)構(gòu)中最簡(jiǎn)單一種結(jié)構(gòu),為了引同學(xué)們?nèi)腴T,筆者就采用了生活化的情境來(lái)助力教學(xué)。
順序結(jié)構(gòu)的典型例子有兩個(gè)數(shù)的交換、雞兔同籠、求三角形面積等。為了便于理解,筆者首先模擬了“超市購(gòu)物”生活場(chǎng)景的教學(xué)。首先,在超市入口處拿購(gòu)物車,然后將商品放入購(gòu)物車,然后在結(jié)賬柜臺(tái)查看付款,從超市出口退出。畫流程圖,就更直觀形象,一目了然。進(jìn)而講解順序結(jié)構(gòu)的主要特點(diǎn)是按自然順序的流程來(lái)執(zhí)行語(yǔ)句的,就好似工廠的流水線。接下來(lái),教學(xué)“兩個(gè)數(shù)的交換、雞兔同籠及求三角形面積等”就顯得簡(jiǎn)單易懂了。
案例1:已知三角形的三邊長(zhǎng)分別為a、b、c,求三角形的面積。分析:前面已經(jīng)學(xué)習(xí)了控件,那么這里邊長(zhǎng)的輸入就用文本框輸入,三角形面積公式是,其中p為半周長(zhǎng)。程序代碼如下。
pr ivate sub command1_click()
dim a as single,b as single,c as single dim p as single,s as single
a=val(text1.text):b=val(text2.text) c=val(text3.text):p=(a+b+c)/2
s=sqr(p*(p-a)*(p-b)*(p-c))
label1.caption=s
End sub
可見(jiàn),求三角形面積的程序是按指令順序一條一條執(zhí)行下來(lái),正如在超市購(gòu)物的步驟(如圖所示),同學(xué)們能快速地掌握順序結(jié)構(gòu)程序的特點(diǎn)和書寫要求。這種情境教學(xué)貼近現(xiàn)實(shí)生活,通過(guò)生活的比喻、隱喻等方式分析教學(xué)中的重點(diǎn)和難點(diǎn),找到關(guān)鍵點(diǎn),突破困難,最終學(xué)到自己想要的知識(shí)或技能,不斷提升個(gè)人的素質(zhì)。
2.問(wèn)題式的情景教學(xué)
有問(wèn)題的情景可以有效地引導(dǎo)學(xué)生思考,問(wèn)題是基于教學(xué)目標(biāo)。問(wèn)題的難度是適中的,可以滿足大多數(shù)學(xué)生的學(xué)習(xí)需求,這樣大多數(shù)學(xué)生都可以處于積極的心態(tài)。最后,通過(guò)解決問(wèn)題,實(shí)現(xiàn)課堂知識(shí)的生成,并收到良好的教學(xué)效果。在講授VB循環(huán)語(yǔ)句并增進(jìn)理解時(shí),就可以創(chuàng)設(shè)問(wèn)題情景。
案例2:在學(xué)習(xí)“步長(zhǎng)”知識(shí),步長(zhǎng)為1時(shí),典型的例子是“計(jì)算1到20之間的自然數(shù)之和”。該程序段如下。
自然數(shù)之和:
Dim i as integer,s as integer
For i=1 to 20 [step 1]
S=s+i
Next i
Print s
由此,提出問(wèn)題:如果步長(zhǎng)不為1,那么程序應(yīng)該做怎樣的修改?比較典型的例子:求1到20之間的奇數(shù)或偶數(shù)之和。程序段如下。
偶數(shù)之和: 奇數(shù)之和:
Dim I as integer,s Dim I as integer,
as integer s as integer
For i=0 to 20 step 2 For i=1 to 20 step 2
S=s+i S=s+i
Next i Next i
Print s Print s
從上面的例子,我們發(fā)現(xiàn) “自然數(shù)之和”的程序步長(zhǎng)為1,用中括號(hào),則是表明書寫時(shí)可有可無(wú)。在教師引導(dǎo)下,“奇數(shù)之和”及“偶數(shù)之和”的程序怎么寫?我們看到,步長(zhǎng)由原來(lái)的1改成2就能實(shí)現(xiàn)奇數(shù)之和,而修改了循環(huán)變量初值為0和步長(zhǎng)為2后就實(shí)現(xiàn)了偶數(shù)之和。該程序略有修改,功能發(fā)生了很大變化。從問(wèn)題的提出,到問(wèn)題分析和解決,學(xué)生一步一個(gè)臺(tái)階地迅速掌握循環(huán)變量、初始值、終值、步長(zhǎng)等知識(shí),同時(shí)也理解和掌握循環(huán)語(yǔ)句的結(jié)構(gòu)和應(yīng)用。
問(wèn)題式情景教學(xué),以問(wèn)題的提出開(kāi)始,自始至終圍繞問(wèn)題的解決開(kāi)展教與學(xué)。在教師的啟發(fā)下,問(wèn)題由易到難,層層遞進(jìn),一個(gè)一個(gè)教學(xué)目標(biāo)得以落實(shí)。合適、科學(xué)的問(wèn)題無(wú)疑能激起學(xué)生學(xué)習(xí)的興趣和喚起探究的動(dòng)力,而問(wèn)題的解決培養(yǎng)了學(xué)生善于思考、靈活運(yùn)用、觸類旁通的學(xué)習(xí)能力。
3.人物化情景教學(xué)
人物化情景教學(xué)是學(xué)生扮演角色的方式來(lái)創(chuàng)設(shè)情景。迪斯托說(shuō)得很好:“我們相信教學(xué)的藝術(shù)不是關(guān)于教學(xué)技巧,而是關(guān)于激勵(lì)、覺(jué)醒和鼓舞人心”。沒(méi)有興趣的情感如何能夠令人興奮,怎么能讓沉睡的學(xué)生清醒起來(lái)?如何激發(fā)學(xué)生學(xué)習(xí)的靈感?情境教學(xué)是以學(xué)生為主體,讓學(xué)生從自己的角度出發(fā),讓學(xué)生沉浸在情境中,參與實(shí)際鍛煉,學(xué)習(xí)效果可以達(dá)到70%。
例如,筆者在參加一次教學(xué)大比武時(shí),在教學(xué)二維數(shù)組元素引用時(shí),就以學(xué)生的“座位號(hào)”來(lái)幫助理解的。
案例3:二維數(shù)組的定義語(yǔ)句:dim a(m,n) as integer,下標(biāo)從0開(kāi)始,共有(m+1)*(n+1)個(gè)元素。假設(shè)m為3,n為7,怎樣通過(guò)學(xué)生的座位來(lái)幫助理解呢?
我們可以開(kāi)展分析,座位第一排第一列就相當(dāng)元素a(0,0),第四排第八列相當(dāng)元素A(3,7),在此基礎(chǔ)上提出問(wèn)題:每個(gè)同學(xué)找一下自己在座位在哪里?來(lái)了一位新同學(xué)怎么安排他的座位?去了一位同學(xué)又怎么安排座位?就好比對(duì)數(shù)組進(jìn)行操作,設(shè)計(jì)的問(wèn)題:插入某個(gè)元素應(yīng)如何實(shí)現(xiàn)?刪除某個(gè)元素應(yīng)如何操作?等等。
這樣人物化的情景教學(xué),每位學(xué)生覺(jué)得自己是一個(gè)數(shù)組元素,意識(shí)自己是班集體的一個(gè)分子。班級(jí)就好比一個(gè)數(shù)組,個(gè)人就好比是其中一個(gè)元素。同學(xué)們?cè)诮處煹囊龑?dǎo)下,全身心參與教學(xué)活動(dòng)之中,親身體驗(yàn)教學(xué)任務(wù),快速地掌握了數(shù)組、數(shù)組元素、下標(biāo)等一系列概念及它們之間的關(guān)系。有了這些基礎(chǔ),在后續(xù)學(xué)習(xí)數(shù)組元素的增加、刪除、排序等就會(huì)更加直觀、易懂。
基于情景的教學(xué)案例還有很多,這里不一一列舉。經(jīng)由以上幾個(gè)案例,我們可以發(fā)現(xiàn)情景教學(xué)的實(shí)施,一定要經(jīng)歷情景設(shè)計(jì)、情景體驗(yàn)、情景反思等階段。筆者認(rèn)為,在教學(xué)中設(shè)計(jì)情景是基礎(chǔ),體驗(yàn)情景是關(guān)鍵,反思情景則是對(duì)知識(shí)的總結(jié)、補(bǔ)充或是情感的升華??傊?,VB程序設(shè)計(jì)課程相對(duì)于職業(yè)高中這一個(gè)學(xué)生群體,內(nèi)容抽象且理論性強(qiáng)。在一般的教學(xué)中,教師只著眼于課堂,使用老套的教學(xué)手段和過(guò)時(shí)的方法來(lái)灌輸知識(shí),這不利于學(xué)生對(duì)學(xué)習(xí)能力的探索和發(fā)散思維的發(fā)展。此外,VB編程課程涉及功能、表達(dá)式、算法、程序等概念知識(shí),邏輯性強(qiáng),理論性也強(qiáng),傳統(tǒng)教學(xué)不利于培養(yǎng)學(xué)生綜合能力。傳統(tǒng)的教學(xué)不能激起學(xué)生學(xué)習(xí)的興趣,卻會(huì)扼殺學(xué)生學(xué)習(xí)的熱情,這種學(xué)習(xí)不會(huì)持久。因此,教學(xué)藝術(shù)不是講授能力,而是點(diǎn)燃學(xué)生學(xué)習(xí)的火花,即喚醒和鼓勵(lì)。將情景教學(xué)方法引入課程中,營(yíng)造貼近學(xué)生教學(xué)的情境,激發(fā)學(xué)生的好奇心,培養(yǎng)學(xué)生的綜合能力和素養(yǎng),并深度挖掘他們的潛能。
參考文獻(xiàn):
[1]馮衛(wèi)東.情景教學(xué)操作全手冊(cè)[M].南京:江蘇教育出版社,2010.
[2]高凱,李倩華.情景教學(xué)模式在中職計(jì)算機(jī)網(wǎng)絡(luò)課程中的應(yīng)用初探[J].中國(guó)科技博覽,2011(2).
[3]余文森,劉冬巖.有效教學(xué)的基本策略[M].福州:福建教育出版社,2013.
(作者單位:臨海市高級(jí)職業(yè)中學(xué))