王 訓(xùn)
Visual Basic以其簡單易學(xué)、功能強(qiáng)大而得到廣泛應(yīng)用,并且成為各技工學(xué)校程序設(shè)計課程的首選語言。而學(xué)生如何學(xué)好這門課以及老師如何教好這門課,也成為值得探討的話題。筆者根據(jù)多年的教學(xué)經(jīng)驗(yàn)以及中高技學(xué)生學(xué)習(xí)VB的一些實(shí)例,總結(jié)出技工學(xué)校VB程序設(shè)計教學(xué)的一些教學(xué)方法和學(xué)習(xí)方法,供廣大技工學(xué)校的師生交流與學(xué)習(xí)。
VB語言比較枯燥、難以理解,特別是中技的學(xué)生普遍是初中文化水平,缺乏相應(yīng)的知識背景,比如數(shù)學(xué)和英語知識就比較缺乏,導(dǎo)致學(xué)生對這門課程產(chǎn)生恐懼心理,喪失興趣。這就要求教師在教學(xué)中分析、摸索出一些行之有效的教學(xué)方法,才有可能培養(yǎng)學(xué)生的程序設(shè)計能力,激發(fā)學(xué)生對程序設(shè)計的興趣。下面首先談?wù)勚?、高技校學(xué)生VB程序設(shè)計教學(xué)都適用的一些教學(xué)方法。
一、從演示學(xué)生感興趣的游戲程序入手,培養(yǎng)學(xué)生濃厚的學(xué)習(xí)興趣
興趣是最好的老師,沒有興趣的學(xué)習(xí)將是枯燥無味的,也是很被動的。筆者在5年的VB程序設(shè)計教學(xué)中,每次在上第一堂程序設(shè)計課時都給學(xué)生演示事先準(zhǔn)備好的游戲程序,讓學(xué)生一下就對程序設(shè)計產(chǎn)生濃厚的興趣。筆者在2004擔(dān)任本校0316班的VB程序設(shè)計老師時,第一堂課就演示了一個打老鼠的游戲程序,給全班同學(xué)留下了很深的印象,大部分同學(xué)當(dāng)時就表示要好好學(xué)習(xí)該門課程。
二、打破課本原有的體系結(jié)構(gòu),大力推行實(shí)例教學(xué),培養(yǎng)學(xué)生的成就感
大部分VB教材總是一開始介紹對象、屬性、方法和事件等等一系列的在程序設(shè)計中比較抽象難懂的概念,然后介紹VB數(shù)據(jù)類型、常量、變量、數(shù)組、函數(shù)與過程,其次再介紹VB的語句類型如順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu),最后才介紹常見控件和實(shí)例。從知識的邏輯結(jié)構(gòu)體系來看,這樣安排無可非議,但是大部分技工學(xué)校學(xué)生的基礎(chǔ)比較薄弱,再加上一些學(xué)生的厭學(xué)情緒會感染班上其他同學(xué),使教學(xué)任務(wù)難以完成。因此,我們在技工學(xué)校的程序設(shè)計教學(xué)中首先應(yīng)從最基本的實(shí)例入手,讓學(xué)生在老師的帶領(lǐng)下能編寫不用寫太多代碼的程序,讓學(xué)生在不斷的學(xué)習(xí)過程中找到“我已經(jīng)能做程序了”的成就感。
三、在實(shí)例教學(xué)中巧妙地添加程序設(shè)計的基礎(chǔ)知識
在VB程序設(shè)計的學(xué)習(xí)中,一些基礎(chǔ)知識是必不可少的,如數(shù)據(jù)類型、變量、常量、函數(shù)與過程。由于這些知識都比較枯燥,講純粹的理論課學(xué)生不太愿意聽。筆者在0714班的教學(xué)中就沒有抽專門的時間講這些東西,而是把這些知識點(diǎn)融合在實(shí)例中。比如,在講數(shù)據(jù)類型時,就是在程序?qū)嵗泄室獍炎兞款愋投x成錯誤的類型,當(dāng)程序運(yùn)行出錯時,找到出錯的原因,把變量類型改正過來以后程序的錯誤排除,讓學(xué)生感到變量類型的重要性。然后講解幾種常見數(shù)據(jù)類型的用法和變量的定義及分類。
四、采用“循序漸進(jìn)法”,培養(yǎng)學(xué)生的程序設(shè)計能力
程序設(shè)計的學(xué)習(xí)是一個漫長的過程,要經(jīng)過學(xué)習(xí)語言、閱讀程序和編制程序這樣一個循序漸進(jìn)的過程。在教學(xué)過程中,筆者將這些訓(xùn)練分解成三個階段,培養(yǎng)學(xué)生的程序設(shè)計能力。
1.模仿階段
該階段的教學(xué)目標(biāo)是熟悉VB程序開發(fā)的基本步驟,筆者教給學(xué)生的是四步驟(第一步添加控件、第二步改屬性、第三步寫代碼、第四部調(diào)試運(yùn)行),使學(xué)生初步掌握 VB編程的基本過程,為下一階段打下良好的基礎(chǔ),這一階段主要采用模仿式的教學(xué)方法,結(jié)合程序講VB的基礎(chǔ)知識,以講實(shí)例程序?yàn)橹?,并通過模仿來編制類似的程序,提高簡單程序設(shè)計的能力。
2.簡單編程階段
這一階段教學(xué)目標(biāo)為在熟練掌握 VB語言的基本語句和了解簡單的數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)上,使學(xué)生能脫離老師的原程序自己編寫比較簡單的一些程序,同時培養(yǎng)學(xué)生一定的程序閱讀能力,引導(dǎo)學(xué)生能從網(wǎng)絡(luò)上下載一些帶有原代碼的程序并能讀懂它,培養(yǎng)學(xué)生理解程序流程,能根據(jù)程序結(jié)構(gòu)流程圖編制程序,由形象思維向抽象思維過渡。
3.綜合編程階段
該階段教學(xué)目標(biāo)為培養(yǎng)學(xué)生具有一定的程序設(shè)計能力,通過實(shí)際問題講解使學(xué)生能將一個復(fù)雜的問題分解成若干較為簡單的問題,從而提高開發(fā)簡單實(shí)用系統(tǒng)的初步能力。
五、適應(yīng)中級技工教學(xué)的方式
以上主要就技工學(xué)校的學(xué)生在學(xué)習(xí)程序設(shè)計方面普遍存在的問題進(jìn)行了一些探討。然而技工學(xué)校的學(xué)生又存在中級和高級之分,特別是對于中級班的學(xué)生來說,學(xué)習(xí)程序設(shè)計就顯得尤為困難。下面筆者從教學(xué)實(shí)踐中遇到的問題出發(fā)來談?wù)勚屑壖脊W(xué)校的教學(xué)方式。
1.對中級學(xué)生實(shí)行手把手教學(xué)和組建學(xué)習(xí)小組相結(jié)合的教學(xué)方式
由于中級班的同學(xué)大部分是初中畢業(yè),有極個別的學(xué)生甚至只上了初中二年級就來讀技工學(xué)校了,所以說基礎(chǔ)非常薄弱。筆者在0614班的VB教學(xué)中就遇到在編寫計算圓柱體的體積的程序時,班上有一大半的同學(xué)都不知道計算公式。面對基礎(chǔ)薄弱的學(xué)生,筆者并沒有放棄,而是在課堂練習(xí)上重點(diǎn)輔導(dǎo),讓他們感覺到老師并沒有因?yàn)樗麄兂煽儾疃艞壦麄?。同時把班上的同學(xué)分成幾個學(xué)習(xí)小組,讓程序設(shè)計水平比較欠缺的同學(xué)擔(dān)任組長,這樣對他們有一個促進(jìn)作用。程序設(shè)計是一門實(shí)踐性很強(qiáng)的課程,只有多去做才能發(fā)現(xiàn)自己的缺陷。通過兩個月的努力,該班同學(xué)的程序設(shè)計水平有比較大的提高。
2.在平時的教學(xué)中多講一些中技學(xué)生感興趣的程序
由于中級班的學(xué)生比較貪玩,特別是由于網(wǎng)絡(luò)游戲的興起,很多學(xué)生對游戲和病毒很感興趣。筆者抓住這一點(diǎn),在平時的教學(xué)中穿插講一些游戲和病毒的小程序。比如在講到有一些帶有惡意的病毒程序有刪除文件的功能,筆者就編寫了一個如何刪除指定目錄下的文件的小程序,學(xué)生很感興趣,課堂練習(xí)時全班同學(xué)做得非常認(rèn)真,就連平時很少做作業(yè)的同學(xué)都在認(rèn)真做,下課了還不愿意離開,最后還用筆記本抄了原代碼才離開機(jī)房。筆者在教學(xué)過程中還編寫了一些和同學(xué)們?nèi)粘I钪邢⑾⑾嚓P(guān)的程序,比如“電腦開獎”“計算器”“猜數(shù)字”“打字游戲”“交通紅綠燈”“秒表”等一系列的程序,大大提高了中級學(xué)生的學(xué)習(xí)興趣。
3.抓住中級班學(xué)生的思想特點(diǎn),建立和諧平等的師生關(guān)系
筆者真正體會到,作為一名老師,一定要放下架子教書,平等地對待學(xué)生,不要高高在上地上課。以前,筆者總愛在課堂上批評學(xué)生沒做作業(yè)不守紀(jì)律成績不理想等等。中級班的學(xué)生處于心理發(fā)育期,很容易有逆反心理,越是正面教育、講大道理,有時候結(jié)果偏偏適得其反。后來筆者改變了方法,不刻意去強(qiáng)求學(xué)生做什么,而是從自己身上找原因。首先是要讓自己的課變得有趣一些,同時課后多和學(xué)生交流了解他們心里到底在想什么,筆者總在課堂上強(qiáng)調(diào):“上課時我是老師,課后我們就是朋友”,師生的距離一下就拉近了,只要學(xué)生喜歡你了,就很容易把他們拉到課堂上來了。
筆者將以上一些改革和探索用在課堂教學(xué)和實(shí)踐教學(xué)中,取得了一些效果。技工學(xué)校的VB程序設(shè)計教學(xué)的主要目標(biāo)是為了使同學(xué)們基本掌握VB這門面向?qū)ο蟪绦蛟O(shè)計語言,具備學(xué)習(xí)其他程序設(shè)計語言的能力,能成為軟件產(chǎn)業(yè)的藍(lán)領(lǐng)工人。為了實(shí)現(xiàn)這個目標(biāo),我們在教學(xué)實(shí)踐中,就要根據(jù)學(xué)生的實(shí)際情況合理運(yùn)用多種教學(xué)方法,靈活地、創(chuàng)造性地掌握教學(xué)過程,激發(fā)學(xué)生的興趣,培養(yǎng)學(xué)生的創(chuàng)造性思維和綜合應(yīng)用程序開發(fā)能力。
(作者單位:廣東省工業(yè)高級技工學(xué)校)