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