張慧
摘要 如何解決程序設計語言課枯燥難懂的問題一直是高校程序設計語言課教師探索的問題。本文以Visual Basic程序設計語言課程為例,以建構(gòu)主義教學理論為指導,分別論述了實例教學法、條件遷移教學法和問題教學法在教學過程中的具體應用。旨在培養(yǎng)學生的邏輯思維能力、抽象思維能力及學習的主觀能動性。
關(guān)鍵詞 Visual Basic 程序設計 教學方法 建構(gòu)主義
中圖分類號:G642文獻標識碼:A
VB程序設計語言課程的教學設計以建構(gòu)主義教學理論為指導,結(jié)合多年的教學實踐,探討VB程序設計語言課程的教學方法,以實現(xiàn)使學生能利用VB編寫簡單的Windows應用程序,進而使用VB結(jié)合數(shù)據(jù)庫開發(fā)相應的小型系統(tǒng),培養(yǎng)學生的可視化編程思想以及學習其它相關(guān)課程能力的教學目標。結(jié)合程序設計語言的特點,筆者在對本院學生進行VB程序設計語言課程教學時進行了以下幾點探索:
1 將理論融入到實例中——實例教學法
實例教學法打破了以教材知識點為中心的傳統(tǒng)教學模式,而是以提煉出典型程序?qū)嵗秊橹行?,將學習的語法、程序設計技巧、分析能力等融入到具體應用實例中。整個課堂教學過程以學生為中心,教師為指導,堅持學以致用的原則,強調(diào)在應用中學習。實例教學法可以有效地解決程序設計本身枯燥、難懂這一問題。實踐證明實例教學法,增強了教學內(nèi)容的“趣味性、挑戰(zhàn)性、實用性”,激發(fā)了學生的學習樂趣,提高了學生自主學習的積極性和主動性,從而提高教學質(zhì)量。如:在教學過程中為了講解變量定義、賦值、FOR循環(huán)語法及integer、long數(shù)據(jù)類型所能保存數(shù)據(jù)范圍的不同,筆者設計了如下問題:求4!
學生們參考課本上的語法及網(wǎng)絡上資料都能很快寫出如下程序段:
2 引導學生舉一反三——條件遷移教學法
據(jù)心理學的研究表明,先前的學習對當前的學習產(chǎn)生影響,或者當前的學習會對先前學習產(chǎn)生影響,這種現(xiàn)象就是遷移。遷移有兩種基本形式,一種是已獲得的知識對新知識的學習起促進作用,叫做正遷移。一種是會有消極作用的,叫做負遷移。這里我所談的是前者。舉一反三、觸類旁通就是指學習中的正遷移現(xiàn)象。遷移的原理是客觀事物之間普遍存在的必然聯(lián)系,以及客觀事物之間具有互相制約作用。所以遷移的方法就是通過類比推理,溝通新舊事物之間的聯(lián)系,通過比較、分析、綜合,然后對事物進行抽象概括。條件遷移教學法是教師依據(jù)“遷移規(guī)律”設法為新知識中的輔墊作用。高校中學習程序設計語言的主要目的是幫助學生樹立編程思想,教會學生學習程序設計語言的方法,因此在教學中不能單純地為了講一個例題,而要引導學生通過對一個例子的學習能夠舉一反三、觸類旁通。例如在講述程序的循環(huán)結(jié)構(gòu)時選擇計算0到100之間所有整數(shù)的和這一典型例題。
學生們參考課本上的語法及網(wǎng)絡上資料都能快速正確地寫出程序,但為了讓學生做到舉一反三,提高編程能力,筆者對該典型例題分別附加了如下幾個條件:
第(1)小題需要在循環(huán)體內(nèi)加個判斷奇數(shù)的條件。第(2)小題將步長修改為2,運算結(jié)果是0,并沒有求得0到100之間所有整數(shù)的奇數(shù)和,通過(1)(2)對比,鍛煉學生分析程序的邏輯思維能力,同時也讓學生理解步長的作用。第(3)小題在第(1)小題的基礎(chǔ)上又增加了一點要求,將循環(huán)變量的終止值用變量n來表示。第四、五、六題主要是留給學生思考讓他們能進一步體會循環(huán)語句與條件語句嵌套的應用。通過練習,學生能夠?qū)λ鶎W新知識掌握得更牢固而且能夠鞏固過去所學的知識,進而使綜合編程能力得到提高。這正是程序設計語言課要達到的目的。
3 在糾正錯誤中使學生領(lǐng)會新知識——問題教學法
古人云:學起于思,思源于疑,它深刻地揭示了疑、思、學三者的關(guān)系。2000多年前古希臘教育家、哲學家蘇格拉底的“問答法”教學方法就是圍繞某個具體問題,根據(jù)學生掌握的知識和了解的情況,平等地進行討論,發(fā)揮學生思考問題、解決問題的能動性,從而引導學生得出正確結(jié)論。在教學中筆者是這樣運用該方法的:經(jīng)常給出錯誤的代碼請學生判斷正誤,這種方法可用于有一定難度的問題中。例如在介紹隨機函數(shù)Rnd()時,很多學生對該函數(shù)的用法及功能不太清楚。于是我給出錯誤的例題代碼:隨機生成10個三位正整數(shù),試求出這10個三位數(shù)中的最大值、最小值和平均值。請學生分析該程序是否能實現(xiàn)題目要求的功能。求最值算法對學生來講已不是難點,重點是要求學生對隨機數(shù)有深刻的認識。為了引導學生思考,隨后我在該程序中添加了幾個print方法,將每一處的int(Rnd*100+900)的值都打印出來,學生們發(fā)現(xiàn)每處的值都是不同的。學生在思考問題的過程中對隨機函數(shù)有了更深刻形象的理解。
綜上所述,實例教學法、條件遷移教學法、問題教學法均是現(xiàn)代教學中行之有效的教學方法,有利于激發(fā)學生學習興趣,提高學生學習的主觀能動性,培養(yǎng)學生的創(chuàng)新意識。在VB教學過程中,如果能夠靈活使用這三種教學方法必定會收到良好的教學效果。輔以引導、啟發(fā)的教學措施,必能調(diào)動學生學習的積極性和主動性,學習的興趣得到有效激發(fā),提高學生程序設計的實際應用能力和創(chuàng)新能力。不斷提高學生的綜合素質(zhì),以便更好地滿足今后社會的需求。
參考文獻
[1] 吳杰.教學論——教學理論的歷史發(fā)展[M].吉林教育出版社,2009.
[2] 金傳寶.教師如何提高發(fā)問技巧[J].外國教育研究,2008(2).
[3] 董南萍.關(guān)于學生程序設計能力的培養(yǎng)[J].遼寧教育學院學報,2009.16(5).
[4] 沈國珍.“VB 程序設計”課堂教學的探索與實踐[J].福建電腦,2007(4):208,215.