摘要:VB是一門面向對象的程序設計語言,是計算機專業學生必須掌握的專業基礎課。本文就中職學校該門課程的教學方法以及如何提高學生的知識運用能力和程序開發能力進行了探討。
關鍵詞:VB;程序設計;中職學校;興趣;教學方法
VisualBasie(簡稱VB)程序設計是一門面向對象的可視化編程語言,功能強大,應用廣泛,相對Delphi,VisualC++來說簡單易學。我校在計算機專業就開設了該門課程,但對于生源素質日趨下滑的中職學校學生來說,教師要想教好,學生要想學好本課程,是一件十分困難的事。本人就幾年來自己在該門課程中的教學體會,談以下幾點。
一、激發學生的學習興趣
興趣是一種對事物進行深入認知的需要,是需要的具體體現。學習興趣的培養對激發中職學校計算機語言教學尤為重要,因為中職學校學生普遍基礎較差,只有幫其樹立信心,培養濃厚學習興趣,才能激發其學習動機。筆者認為可從以下兩方面著手。
1 重視起始課的教學,促使學生形成興趣
VB程序設計是一門實踐性和實用性很強的課程,然而剛開始許多學生都感到枯燥無味,遠不如多媒體的圖形圖像、動畫處理、網頁設計課有意思。如何促使學生形成興趣至關重要,興趣是最好的老師,沒有興趣,學生不愿學,老師的教學也難以進行。
要如何培養學生的興趣,發揮學習的主動性呢?第一次課我就把VB編寫的界面漂亮、有趣的程序通過多媒體課件給學生演示,并講解程序的功能。例如,展示多功能計算器、簡易畫圖程序、MP3播放器、CD播放器、播放Gif動畫程序、播放Flash動畫程序、學生管理信息系統等等,從而使學生了解該課程的實際應用性,使其轉化為堅定的學習信心,產生學好本課程的學習動機。
2 創設問題情境,激發探究心理,誘導學習興趣
學習的愿望總是在一定情境中發生。為了使學生積極思考進而解決問題,教師在教學中應經常有意識地創設問題情境,多舉具有強大吸引力的,能由啟而發的實例,使學生產生濃厚興趣,增強學習的動機,有利于教學目標的完成,提高教學效果。
筆者在給學生講循環結構時,例如碰到“求1+2+3+4+……+100的和”的問題時,便引出“猴子撿桃子”的故事。故事梗概是:“猴子第一次撿到一個桃子放人籃筐(籃筐開始是空的),以后每次比前一次多撿一個放人籃筐,依次類推,當猴子撿到第一百次放入籃筐時,籃筐中共有多少個桃子?”。當筆者講述這個故事時,看到學生注意力很集中,課堂氣氛也變得活躍起來,學生也想自己獨立思考找出答案,于是筆者分別叫了不同的學生回答問題,最后將學生的回答進行補充和分析,由淺入深一步一步引入循環結構,總結了程序循環結構思想,學生的思維也跟著問題走。以后當遇到類似求和的問題,學生就會想起這個有趣的實例,對這類問題就能融會貫通,迎刃而解。
同時,在程序設計教學中,應多做練習,教師一定要及時檢查并給出分數,表揚進步的學生和做得好的學生,關心學生,以此激勵學生學習。此外我們還可以指導學生多編程序,讓學生體驗到成功,產生愉悅的心情,讓這種學習興趣和熱情一直延續下去。
二、夯實學生的程序設計基礎
學生對這門課有了興趣,那就是很好的開頭,良好的開端,是成功的一半。但學生要編寫出界面漂亮美觀,操作方便、功能豐富的應用程序,就必須要有扎實的基礎。如何讓學生打好堅實的基礎呢?
1 學好VB程序設計基本功
學習VB程序設計首先要踏踏實實學好常量、變量,數據類型、表達式、基本語句、控制結構、數組、過程等基本知識。這些內容對于剛剛開始學習編寫程序的學生來說,是很難理解的,很枯燥的。開始講課要慢,要多舉實例,讓學生從實例中形成新的概念、方法等。當然盡量結合興趣教學。例如,講解變量和運算符時,引入計算器例子,同時啟發學生開發標準計算器,讓基本知識與實際問題結合考慮。講解選擇語句時,舉例如:買衣服打折,按需選擇;吃飯買雞腿,比較大小再選擇等等。
2 抓住重點,突破難點
在VB程序設計教學中,數據基本類型、變量的定義、內部函數、表達式,控制結構、數組,過程、常用控件、文件等是教學的重點,難點是多分支結構、循環結構、數組和過程等,特別是雙重環、多重循環、過程的定義和調用。我們也要注重編程的算法。例如通過舉例“接力賽跑求所跑的路程”來講解循環結構時,學生能很快比較形象地理解循環結構的循環過程;講到常用控件計時器屬性Interval和timer事件時,有趣案例如“交通燈”,這是學生比較常見的東西,于是讓他們馬上思考并動手去做,很快就能理解。
3 注重實驗,加深理解
VB程序設計是一門實踐性很強的課程,光聽課、看書、做作業只能算“懂得”,不能達到“掌握”的要求。只有反復模仿和運用,反復學習,反復實踐,才能真正地掌握學習內容。如PRINT語句中的分隔符“,”和“;”號的規則,只需編一段小程序,在計算機上驗證,通過對輸出結果進行分析比較,則可掌握其規則與區別。做實驗前教師必須明確實驗目標,根據需解決的問題提出實驗目的、實驗程序、實驗步驟、程序調試過程和實驗結果。要求學生詳細記錄程序調試過程中出現的問題與解決的方法,實驗完成后,根據實驗結果,寫出實驗報告。由于每位學生都存在著優勢和不足,所以他們編制程序的方法會不一樣,有的同學不僅程序正確而且算法好,有的同學編寫的程序則是錯誤的,沒有得出正確的結果。因此筆者運用“自我反思性評價”方式,給學生以展示的機會,為了鼓勵學生的積極性,在劃分的等級上只出現優和合格,先進行個人評價再他人評價,個人評價時從閃光點和不足兩個方面評價自己,在他人評價時盡量尋找被評價人的閃光點,缺點只提出1~2個,讓學生懂得“取人之長,補己之短”的道理,同時讓學生時時體驗成功,享受樂趣。因此VB程序設計既要學好理論,也要加強實踐,理論和實踐相結合,才能達到學以致用。
三、培養學生的程序開發能力
通過前面的學習,學生大致掌握了VB程序設計的基礎知識,但這時學生對知識的理解只停留在表面上,缺乏系統的運用,對小型應用程序系統的開發步驟和調試都還不熟悉,因此,如果我們能開設一個月的課題設計讓學生在教師的指導下根據自己的實際能力選擇一個課題進行設計,這樣對學生的知識運用能力的培養是大有裨益的。當然,由于學生基礎和能力的差異,我們在制訂課題時,應根據學生的具體情況,制定不同的目標,提出不同的要求,這樣才能達到應有的效果。
如筆者在我校的計算機專業該門課程的課題設計時,就給出了以下幾個課題:一是基于學生已經熟悉Windows操作系統并在使用過附件中的計算器和寫字板的基礎上,要求學生參照他們設計一計算器或寫字板;二是對于部分數據庫基礎掌握得較好的同學,要求他們編寫一網上學生成績查詢系統或網上學生情況調查表(要求學生要有一定的ASP基礎),這些課題都比較貼近學生的實際,學生也很感興趣。因此,他們在設計時較為投入,也能認真地查閱資料,分析步驟,進行控件的選取、屬性的設置和事件的編寫、調試。當然,對于同一個課題,我們還可以針對不同的對象分層次做不同的要求,如在設計計算器時,對于一般的同學,我們只要求其完成一簡易計算器(即標準型計算器),其界面如下圖1所示;而對于較好的同學,我們要求完成一較復雜的計算器(科學型計算器),其界面如下圖2所示。學生在設計時就比較有信心,大部分同學能較好地完成設計,這樣既培養了學生的程序開發調試能力,又增強了學生的團隊精神,收到了較好的效果。
四、提升學生的綜合知識運用能力
職業資格是勞動準入的重要依據,國家社會勞動保障部提出:“要積極推進勞動預備制和勞動準入制教育培訓的實施”。我校在計算機專業的大部分學生中,就推行了全國計算機信息高新技術考試(包括了辦公軟件應用Office模塊、Photoshop、FLASH、VF、VB等模塊),鼓勵部分學生參加由教育部考試中心組織的全國計算機等級考試,對一些成績好的或學有余力的學生,可去參加高職單招升學考試,以便以后進一步深造。通過學生進一步學習和有針對性的練習,一方面可以達到勞動準入制要求的相關知識和技能,獲得就業的敲門磚或為升入高等院校打好專業基礎;另一方面可以更進一步掌握控件屬性、方法、事件的具體運用和小型應用程序的編寫、調試方法,提升學生的綜合知識應用能力。
總之,教學方法在程序設計教學中舉足輕重,它制約著程序設計教學的效率。雖然教無定法,但萬變不離其宗,絕不能離開程序設計的教學內容和教學目標,脫離學生的知識背景和認知規律。采取符合學生認知規律的、科學的教學方法,必然會提高教學效率,取得事半功倍的效果。