摘要:在VB程序設計語言教學中,怎樣解決程序設計學習過程中的枯燥難懂及職高學生缺乏學習興趣的問題呢?本文結合實例激發學生興趣,運用“條件遷移教學法”對課本例子進行舉一反三,強化訓練學生的編程能力。
關鍵詞:VB教學;條件遷移教學法;主動學習
教學應因人而教,職業中學計算機專業中的VB教學更是如此。這些學生絕大多數學習習慣差,文化知識基礎不扎實,理解能力相對較弱,長此以往他們對學什么東西興趣都不高。而程序設計本身枯燥難懂,在VB教材中,絕大多數把眾多知識點銜接得很緊,環環相扣,很少有實例,尤其前面用大篇幅講解枯燥的VB語言基礎知識,這樣就很難引起學生學習VB的興趣,甚至還會使他們對程序設計學習產生抵觸情緒。因此筆者認為在VB教學中,不僅是使學生熟悉VB的基本概念,而且還要能夠熟練地掌握一些程序設計的相關技巧和方法,有一定的程序編寫思維能力,讓學生在課堂上能積極主動地探索和學習。為達到這個目的,筆者認為在VB教學中應注重四點。
一、注重興趣激發,引導學生主動學習VB
筆者認為“第一印象”尤為重要,把第一節課變成一節魔術課,把VB通過有趣的小程序展示給學生,讓他們領略一下VB的魅力。如漢字顏色、字體、字型的變化以及在不同位置的隨機出現,隨機產生不同形狀、不同大小和五顏六色的幾何圖形等,讓第一次課在意猶未盡中結束,使學生產生強烈的自己動手去做的欲望。
有了第一節課這一良好的開端,第二步要避免學生的興趣起伏,不要讓這一美好的開端付之東流。此時的課程安排就應打破課本原有的知識邏輯結構體系,對課堂教學內容進行優化,以學生的已有知識為基礎,按照學生的認知規律,遵循先易后難,先具體后抽象的原則,通過觀看、模仿、理解、總結、提高五個階段來組織教學。眾所周知,學習VB首先要踏踏實實學好常量、變量、數據類型、表達式、基本語句、控制結構、數組、過程等基本知識,而這些內容對于剛開始學習編寫程序的學生來說,是很難理解的,很枯燥,按書本上課肯定會打擊學生的積極性。這些客觀原因要求我們開動腦筋去克服。一開始我不要求學生理解,而是多舉實例,讓學生從實例中直觀上去體悟這些概念和方法。當然基礎教學仍要結合興趣教學,如在講變量和運算符時,引入計算器例子,同時啟發學生開發多功能計算器,讓基本知識與實際問題結合考慮。
在VB教學中我始終堅持多準備一些學生感興趣的又能獨立做出來的例題,例如設計一個模擬拆炸彈的程序:倒計時時間1分30秒,按鈕為控件數組,單擊其中一個按鈕時,隨機產生一個結果:(1)彈出信息“成功!”,并結束游戲;(2)彈出信息“失敗,你被炸死了!”,并結束游戲;(3)讓單擊過的按鈕不可用,并把時間縮短成0分30秒,繼續選擇,時間為0分0秒時,彈出信息“游戲結束!”。讓學生動手在計算機中練習,在學生練習時,及時檢查并對能做出來的學生給予肯定、表揚,激勵學生進一步學習VB的興趣。對于那些做不出來的學生,教師應以鼓勵、啟發,幫助其完成。要充分發揮教師上課的魅力,讓學生喜歡你。教師不僅僅只傳知識,更應以情感誘導,給予學生關懷、尊重和理解。教師適時適當用關心、愛護、鼓勵的言語,讓學生去思考,大膽開口回答問題,能活躍課堂氣氛,使教學達到最佳效果,學生的智力得到充分的發揮。
二、注重學生的參與,在操作過程中化解學習中的難點
讓學生動手操作能幫助學生理解,使他們在獲得知識的同時,在思維開發、動手能力方面都有更大的進步。作為教師,當務之急就是要在教材中逐步滲透,體現新的教學理念:動手實踐、自主探索與合作交流。
為了化解課本中較難的知識點,讓學生更好地理解并掌握,教師要想方設法創設場景,讓學生參與互動。我在給學生講循環結構時,用傳統的流程框圖制作了一個課件,再用紅色的箭頭表示程序執行的流向,每次經過處理框時,其中的變量讓它發生變化,當程序執行到判斷框時,就讓學生參與判斷程序執行的方向,直到程序結束,并讓學生邊上機邊判斷變量的值,從而理解變量在每次循環過程中,把原來的值“沖掉”,用新的值來替換。通過參與本課件、上機操作后,大部分學生真正理解了循環結構,那是傳統教學很難做到的。
在學生有了一定編程能力后,讓學生獨立編制一些短小、能擔負一項或幾項功能的程序。如編制彩票模擬程序,簡單MP3播放器等,以此來培養學生獨立工作的能力。在這個過程中讓學生充分發揮自己的聰明才智,對于同一問題每個人都有不同的操作界面、不同的實踐方法,效果都很好。在此基礎上,展示學生具有不同特點的典型程序,并向大家介紹創作的技巧和存在的問題,然后大家一起討論,交流方法,共同提高,讓學生知道自己的潛力。通過這種方法解決了學生在編程中害怕編程的最大問題。
三、注重課本實例,運用條件遷移教學法,提高學生實際應用能力
在整個VB教學過程中發現一直有這樣一種現象:部分學生基礎理論知識很扎實,平時上課回答問題對答如流,考試選擇、填空都做得很好,甚至讀程序也很內行,可讓他自己編程序時就是沒有頭緒,最后上機通不過。這往往是學生對程序設計的相關技巧和方法掌握不夠熟練,缺乏一定的編寫思維能力。因此我在程序設計的教學過程中運用條件遷移法進行不斷實踐、強化。所謂條件遷移法是指在教學過程中,教師引導學生,從一個可以實現的簡單程序出發,在原有程序的基礎上逐漸改變和增加條件,在不斷解決新問題過程中,提高學生對程序的分析理解和舉一反三的綜合能力。
如學習計數循環For…next時,書上的例子是求出前100項自然數和的程序,學生在理論上掌握For…next循環之后,理解并不困難,為了提高學生的編程能力,我要求學生對原程序做如下幾種修改。
(1)求1到100之間所有奇數的和,要求跳數為2。
(2)求1到100之間所有奇數的和,要求跳數為1。
(3)在程序運行過程中任意輸入一個自然數n,求1到n之間所有奇數和。
第一小題難度與書本原程序差不多,學生只要將循環跳數改為2即可。第二小題難度就增加了,編寫程序時需要做兩點調整,一要改變循環變量的變化范圍為從1到50,二要將循環語句中的通項改為s=s+(2I-1)。要能做到這些變化,需要學生對For…next有比較深刻的理解。第三小題又在第二小題的基礎上增加了要求,即循環變量的終止值要用變量n來表示,這就要求在程序的前面增加一條定義變量的語句,而且要用inputbox語句在程序運行的過程中將終止值輸入給變量n。這些實踐綜合了課堂教學的許多知識,對剛剛學習編程的高一學生來說有一定難度,但運用條件遷移教學法肯定是一條提高學生綜合編程能力的捷徑。
四、注重團隊精神培養,打好學生可持續發展的基礎
現代軟件通過集團開發,集成團隊的智慧來提高開發的速度,所以團隊精神是學生參加工作后必須具備的一種職業素質。為此,我們在VB教學過程中十分注重學生團隊精神的培養。在學生基礎扎實之際,抓住時機加強綜合訓練,由教師提出問題,讓學生展現各自才能。如:圖書管理系統、人事檔案管理系統。把全班學生分成幾組,每組由一名學業較好的學生做組長,教師向每個小組分配一個系統的任務,由小組長向組員分配模塊,并向組員說明要求,如模塊要實現什么功能,如何統一界面,何時完成等。這樣一來,既培養了學生之間的團隊合作、共同開發的精神,又激勵著學生刻苦鉆研知識,同時為他們走向社會與人協作等方面打下了基礎。
程序設計教學的主要目的是為了使學生了解編程的基本思想,培養分析問題、解決問題的基本能力。圍繞這個目標,在保證學生學習積極性的前提下,按照他們的認知規律組織教學,一切有效的方法都可以在我們的教學過程中加以運用,進而使綜合素質得到整體提高,這是VB程序設計課程教學的最終目標。
參考文獻
[1