□王曉晨
(山西廣播電視大學,山西 太原 030027)
《Visual Basic程序設計》是高等院校基礎課教材,是一門實踐性很強的課程,它既有面向對象的設計理念,又包含了工程化的編程理念。[1]在傳統教學中,以演繹法教學為主:先講語法,再講它的格式和功能,然后是講使用方法,最后讓學生自己練習,其結果總是讓人不滿意。學生可能在這個例子中懂了,再換到其他程序又不知所措。美國著名教育家杜威曾提出:“學生中心,從做中學”的實用主義教學思想,認為如果實踐能力不強,再多知識也無用。所以我們的教學也應以學生為教育的中心,教學過程中應建立在學生對各種預設案例的操作上。這就要求我們教師的教學要始終圍繞編程案例的展開,讓每節課有明確的目標、實在的內容,最終提高學生的動手能力。歸根結底Visual Basic程序設計的教學中就要做到“用中學”,用案例教學法可以使學生把知識應用于實踐,幫助他們靈活掌握Visual Basic這門語言。
在設計教學任務之前,教師應反復地實際操作,創設情景并設計符合本講內容的教學任務,探究任務的細節,并有清晰的教學目標,對教學的發展有個良好的把控。我們的學生無法適應工作需求,不是他們不懂得理論,而是實際操作的欠缺和不能對知識點的靈活掌握。比如讓他們用Visual Basic去開發一個人事管理軟件,語言的知識點都掌握了,但工程化的編程思路欠缺,使他們無從下手,所以我們傳授知識的過程要培養他們的實際操作能力,考慮創設怎樣的情景,提出怎樣的教學任務,引入什么樣的案例。也要注意,在教學任務給出前不要一步到位的設計,要由易入難,每一個問題解決前要先對所用到語法、控件進行介紹,并拓展到在各個環境中的使用。[2]其次在教學活動開始前要對教學任務進行分析:在完成我們預設的教學目標條件下需要學生達到什么樣的編程水平?并對這些能力的層次進行深入探究,以此來確定我們的教學方法和教學條件。另外教學任務的設計要從我們案例的答案一直追問案例的起始,每一步功能的實現所用到的知識都羅列出來,并以此確定我們的教學方法和步驟。這樣也讓學生時刻在思考怎么解決我們提出的問題,無形中就加深了他們的程序語言知識,同時也提高了編程技能。[3]
設計教學任務可簡單地表達為“要做什么”,那么“怎樣做”?教學任務也提出來了,而我們用什么方法和步驟去完成它?在具體到Visual Basic程序設計中就是需要用到的界面設計、編程思路、Visual Basic語句語法使用、控件使用等等。在傳統的演繹法教學中,就是講結構、講語法,然后操作,但實踐證明吸引不住學生。為了提高本課程教學質量,我們必須打破這種教學模式,側重培養學生的實際操作能力,把教學內容具體到學生感興趣的實際問題上,這就需要教師深入分析教學內容,挖掘教材。找到教學內容載體吸引學生和老師一起去商討該問題的解決辦法。在教學過程中不要刻意地注重Visual Basic語言本身和代碼編寫的技巧,而是側重讓學生建立工程化的編程思路:首先是需求分析,而后模型的建立、需要用到哪些算法、代碼設計、最后進行測試,完成整個設計過程。在講的過程中重點講授程序設計的思想、方法和程序設計的風格。[4]
在Visual Basic程序設計課程的講解中,其實整體上把本教材的內容分成若干個案例,每個案例都歸結到生活中的一個實例,并通過案例重點講解Visual Basic程序設計的思路和步驟,以學習語言為輔,通過學生自己動手,在實踐中掌握Visual Basic這門語言,同時在學生的學習過程中教師全程跟蹤、答疑解難。比如在“拓展訓練”中教師給出學生路線和思路,并與學生一起分析此思路中用到的知識點,闡明其優缺點,讓學生去思考還有無更好的思路方法,最后學生通過老師講解,運用所學到的知識點轉化為實踐,獨立完成程序設計的過程。如在Visual Basic圖形圖像處理的講解中,我們通過“指針式時鐘”和“VCD播放器”這兩個案例的引入,去介紹圖形操作的基礎知識和Visual Basic中開發多媒體應用程序。其主要內容包括坐標系統、簡單幾何繪圖、相關控件的使用方法等。使學生通過學習,能夠熟練利用Visual Basic提供的強大繪圖功能和多媒體程序開發功能,輕松涉足多媒體編程世界,并掌握簡單幾何圖形的繪制方法,實現多媒體播放應用程序的設計。特別是“指針式時鐘”這個案例的引入,學生要做界面設計,在畫表盤的過程中,學到了圖像的處理,然后在指針的設計中了解到了Visual Basic的坐標系原理,而且通過圓周率計算指針的位置更是用到的數學知識,相信學生不僅會對程序本身感興趣,而且還會進一步思考如何美化界面。再如我們講解“循環”這個知識點,通過引入“冒泡排序”這個案例:把5個數字從小到大排序。編程思路是在排序時,將相鄰兩個數字進行比較,從第一個數字開始,將每兩個數字進行比較。若不符合排序順序,就交換這兩個數字位置,直到第m個記錄為止。需要比較m(m-1)/2次,如果每次比較都寫一次算法勢必使工作量繁重,所以我們引入循環,在第一次循環結束后得到最大的記錄,第二次循環仍重復上述步驟,直到第m-1個記錄,得到次大的記錄。重復若干次后,便得到已排序好的一組紀錄。
通過此案例不僅讓學生了解到“冒泡排序”的思路,也更加讓學生深刻記住本講知識點:循環語句。
在具體教學中還可以讓學生分組,教師提出案例,學生分組討論并確定本小組的編程思路,教師根據他們的編程思路指出所用到的知識點,然后回到教材講解,讓學生充分掌握后,根據他們的編程思路編寫程序、測試,初步完成本程序設計。教師根據小組的完成情況指出其優缺點,并讓學生思考如何改進,激發他們的創新能力。最后在課堂結束時進行知識點回顧,首先按提綱對本講內容梳理,幫助學生對本講知識消化吸收,使學生通過教師的總結和回顧全面地掌握到知識點,完成教學任務,實現教學目標。
教師提出案例以后,通過對案例的分析,知識點的講解,然后讓學生上機實踐,教師起到引導作用,而學生作為學習的主導可能由于能力不同而引起兩極分化,學習能力差的跟不上教學進度,比如對知識點沒有領悟透,那么使用中就存在障礙,還有的對知識點不熟練。如果這些問題不解決勢必會對教學效果大打折扣。所以教師在教學的同時要加大課堂總結和對重點知識的復習,讓學習能力差的學生對所講內容再一次了解,使其跟上教學進度,達到處理實際案例的需求。與此同時,教師要對學生完成案例的實際情況、教學效果進行總結和評估,確保教學效果得以鞏固。在學生實踐環節,對學生所完成的案例情況及時提供有針對性的反饋信息,并及時調整教學內容的難易程度等。這樣同時也使學生了解到自己的學習情況,幫助他們及時調整學習安排,改進學習方法,提高學習效率,避免其在學習過程中走彎路。[5]
實踐證明,通過這種“用中學”教學方式,明顯提高了教學質量,使學生動手能力得到極大提高。不僅掌握Visual Basic的基本知識和技巧,還能夠靈活地運用所學知識處理工作中的實際需要。多年教學實踐表明,學生編程能力有明顯提高,創新能力也有所加強。
[1]龔沛曾.Visual Basic程序設計簡明教程[M].北京:高等教育出版社,2003.
[2]賈長云.VB 教學之我見[J].中國職業技術教育,2004,(4).
[3]曹丹.在VB教學中激發學生的學習興趣[J].科技信息,2010,(3).
[4]江麗麗.VB程序設計教學中開展項目教學法的研究[J].辦公自動化(綜合版),2009,(24).
[5]康麗萍.VB 教學的幾點體會[J].農業網絡信息,2005,(9).