姜桂洪
摘要:講授《VB.NET程序設(shè)計》課程時,選用恰當(dāng)?shù)牡湫蛯嵗v述其基本規(guī)則和語法,比傳統(tǒng)的教學(xué)設(shè)計采用知識點的層次遞進(jìn)為體系更能夠讓學(xué)生加深理解和掌握一些面向?qū)ο蠹夹g(shù)的抽象概念,提高學(xué)生面向?qū)ο缶幊痰哪芰?。同時,通過實例編程還可以加強學(xué)生的組織協(xié)作能力和團(tuán)隊意識,為實現(xiàn)從個人編程過渡到團(tuán)隊協(xié)作開發(fā)程序提供較好的實踐機(jī)會。
關(guān)鍵詞:個性化課件;實例化教學(xué);團(tuán)隊意識;能力培養(yǎng)
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)10-0104-02
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID):
面向新工科教育的大趨勢,非計算機(jī)專業(yè)學(xué)生學(xué)習(xí)面向?qū)ο缶幊碳夹g(shù),Visual Basic .NET軟件是一個較為普遍的選擇?!禫B.NET程序設(shè)計》課程具有理論與實踐結(jié)合緊密、可視化環(huán)境豐富、語法規(guī)則繁雜的特點。如何在授課過程中展現(xiàn)實例化教學(xué)的優(yōu)勢,激發(fā)學(xué)生的學(xué)習(xí)興趣,以此幫助學(xué)生提高面向?qū)ο缶幊碳夹g(shù)的能力,而不是采用知識點的層次遞進(jìn)為體系重復(fù)地講授數(shù)據(jù)類型、基本控制結(jié)構(gòu)、數(shù)組、過程、控件等。實例化教學(xué)法就是通常應(yīng)用較為普遍的一種,而多媒體技術(shù)進(jìn)步又為實例化教學(xué)過程提供了良好的快捷方式。
1 VB.NET 語言實例化教學(xué)的基本過程設(shè)計
實例化教學(xué)就是對課程中的重點、難點內(nèi)容,選配典型的例題把抽象的內(nèi)容具體化、形象化,從而幫助學(xué)生理解掌握這些內(nèi)容,并適當(dāng)加以引申,引導(dǎo)并激發(fā)學(xué)生做進(jìn)一步的思考和探索。其較為完整的VB.NET 語言實例化教學(xué)基本過程如圖1所示。
VB.NET語言實例化教學(xué)的基本模式應(yīng)該是在講述某一部分內(nèi)容時,先提出與本節(jié)內(nèi)容有關(guān)的或能夠解決的一個相關(guān)問題組合,選擇一個典型的例子作為案例,通過該例子的編程方法講述用到相關(guān)的VB.NET語言知識,在此基礎(chǔ)上補充其他的案例,進(jìn)一步講述本節(jié)內(nèi)容的相關(guān)語言規(guī)則,然后對所學(xué)的理論知識進(jìn)行總結(jié)。描述該節(jié)內(nèi)容解決開始提出的問題的思路,讓學(xué)生仿照例題來解決問題,最后再提出更高的要求,解決更復(fù)雜的問題,鍛煉學(xué)生的編程能力,從而完成教學(xué)目的,達(dá)到大綱對本學(xué)科VB.NET語言的要求。
在這個過程中,教師可以根據(jù)本班學(xué)生的基礎(chǔ)專門制作的一些課件,幫助學(xué)生加深對規(guī)則或算法的認(rèn)識。通過具體、生動的實例、視頻和動畫,把教材中的內(nèi)容由抽象的概念變?yōu)樯鷦拥膶嵗f明,把靜態(tài)的文字解說變?yōu)閯討B(tài)的教學(xué)演示,讓大多數(shù)學(xué)生能夠直接、具體的理解和掌握課程的重點和難點。還可以對學(xué)習(xí)基礎(chǔ)差、接受能力弱的學(xué)生適當(dāng)?shù)剡M(jìn)行個性化指導(dǎo),專門提供一些針對性強的實例化輔導(dǎo)材料,如閱讀材料、實例分析視頻等。
2 實例化教學(xué)是提高學(xué)生編程能力的有效途徑
《VB.NET程序設(shè)計》的主要內(nèi)容是介紹面向?qū)ο蟪绦蛟O(shè)計編程過程中用到基本語法要素、基本控制結(jié)構(gòu)、數(shù)組、過程、控件、文件讀寫、數(shù)據(jù)庫連接等基本知識,以及一些常用算法的描述。這些內(nèi)容都是從事工科專業(yè)人員所必須了解和掌握的必修內(nèi)容。
2.1 結(jié)合學(xué)生的實際進(jìn)行案例選擇
面向?qū)ο蟮木幊?,是以類和對象為基本單元進(jìn)行編程,編程序不再是面向過程的模塊,而變成對象的引用、對屬性值和方法程序的修改和代碼設(shè)計,程序的執(zhí)行也由線性化變成事件驅(qū)動的隨機(jī)化。而表達(dá)方式也變得更復(fù)雜。面對具有一定編程知識的學(xué)生,教師應(yīng)該想盡辦法設(shè)計一些典型的實例,將教材中的重點、難點內(nèi)容具體化,形象化。
從本科學(xué)生的認(rèn)知特點來看,對難于理解的VB.NET語言內(nèi)容,如果利用具體的實例演示一個抽象的概念所蘊含的基本內(nèi)涵,學(xué)生的理解之后的心情就必然會顯得愉悅,從而讓其在學(xué)習(xí)過程中得到樂趣和有成就感,更能夠激發(fā)學(xué)生的學(xué)習(xí)動力。例如,講授時間間隔數(shù)函數(shù)DateDiff()時,可以現(xiàn)場提問一個同學(xué),假設(shè)他的出生日期為2000年3月18號,就可以利用函數(shù)DateDiff(DateInterval.Year, # 3/18/1988#, Now)計算他的年齡,而不斷地改變參數(shù)DateInterval.Year 選項,就可以計算出該同學(xué)從出生到當(dāng)前的月數(shù)、天數(shù)、周數(shù)等等。也可以利用該函數(shù)計算出當(dāng)天離畢業(yè)還有多少天,從而讓學(xué)生進(jìn)一步明確函數(shù)中各項參數(shù)的含義和位置。
2.2 常設(shè)可預(yù)見錯誤進(jìn)行案例選擇
在教學(xué)過程中,教師應(yīng)當(dāng)預(yù)設(shè)常見的錯誤實例,在利用實例糾正錯誤的過程中,提高學(xué)生的學(xué)習(xí)興趣,加深學(xué)生對.NET規(guī)則的理解。同時引導(dǎo)學(xué)生熟悉各種調(diào)試程序的手段和一些常見錯誤的提示。
例如,在VB.NET中窗體中利用循環(huán)設(shè)計一行移動的字幕。首先是教師創(chuàng)建一個VB.NET項目,從中引出.NET平臺的集成開發(fā)環(huán)境中的標(biāo)題、工具欄、菜單、窗體、工具箱、屬性窗口等基本概念,讓學(xué)生在前面介紹軟件功能的基礎(chǔ)上,對.NET平臺的集成開發(fā)環(huán)境具有感性認(rèn)識;第2步,介紹和分析本例的預(yù)期目標(biāo),從此引出實例背景圖案的設(shè)計思路,以及如何選擇窗體屬性、如何改變窗體屬性的默認(rèn)設(shè)置等操作;第3步,分析實現(xiàn)字幕的動態(tài)顯示需要添加的控件,以此引出在窗體中如何添加控件方法;第4步,讓學(xué)生熟悉標(biāo)簽控件的常用屬性和用法,以及實現(xiàn)移動字幕的效果必須利用Timer控件的功能,添加并設(shè)置Timer控件的屬性,介紹這些屬性與移動字幕的各種運行效果的關(guān)系;最后引導(dǎo)學(xué)生初始化窗體,編寫自動執(zhí)行過程Timer1-Timer()代碼,然后運行程序,讓學(xué)生真實感受移動字幕的效果。還可以在此基礎(chǔ)上演示修改標(biāo)簽和Timer等控件的屬性,觀察移動字幕的快慢、前景色、背景色與字體等效果的變化,讓學(xué)生體會到面向?qū)ο蟪绦蛟O(shè)計的過程、步驟、思路和技巧。
2.3針對主要語言規(guī)則進(jìn)行案例選擇
VB.NET語言中都包含有許多抽象的概念,而且這些概念往往與前導(dǎo)及后續(xù)的知識聯(lián)系密切。在實例化教學(xué)過程中,特別強調(diào)從簡單、較易理解的案例入手進(jìn)行操作或說明,或者給出恰當(dāng)?shù)碾[喻,將多個相近的概念進(jìn)行對照的過程中,運用比較的方法把一些概念串聯(lián)起來,會起到加深印象,強化理解,起到較好的作用。通過實例程序設(shè)計講課程中要掌握的概念、知識點、程序設(shè)計方法、思路及教學(xué)理念統(tǒng)一貫穿其中,形成一個完整的、科學(xué)的教學(xué)體系。例如,選用文本框為例,介紹控件的常用屬性、事件和方法,對于其他控件就可以僅僅介紹其特別的常用屬性、事件和方法。例如,通過一個“檢查口令”程序,可以將面向?qū)ο缶幊痰囊话悴襟E進(jìn)行介紹,就不要再千篇一律地介紹每一個編程實例的步驟,而是把重點放在題目本身的編程特別技巧處理部分,并舉一反三的提高編程的技巧。
3 優(yōu)化教學(xué)過程是改進(jìn)教學(xué)方法有效途徑
《VB.NET程序設(shè)計》課程的教學(xué)中難點是讓學(xué)生理解算法和自己動手編寫程序,歸根結(jié)底是培養(yǎng)學(xué)生的編程能力。編程能力是在理解算法是基礎(chǔ)上,通過在不斷實踐的過程中逐步積累起來的。
3.1 多媒體技術(shù)可以提高教學(xué)課堂信息密度
利用多媒體技術(shù)改造VB.NET語言課堂結(jié)構(gòu),應(yīng)從最基本的操作方法入手優(yōu)化課堂教學(xué)結(jié)構(gòu),以實例操作代替泛泛的理論解釋,借助于多媒體輔助教學(xué)工具,提高課堂教學(xué)的容量和密度,使教學(xué)過程變得活躍而富有趣味性,從原來在課堂上板書講解與課后實驗的模式,變成課堂教學(xué)與學(xué)生實驗一體化模式。其目標(biāo)是改善教學(xué)環(huán)境,提高課堂教學(xué)效率,優(yōu)化教學(xué)過程, 進(jìn)一步提高授課效果。在講授這些VB.NET語言的算法時, Flash動畫是一種非常適合的工具。制作動畫可以將算法的過程用動態(tài)的形式生動地表現(xiàn)出來,理解算法困難就會迎刃而解。通過的色彩搭配和動態(tài)畫面的變化,讓學(xué)生們在一些變化過程中觀察到靜態(tài)的文字教材所難以完整地表述的含義。
3.2 通過團(tuán)隊建設(shè)優(yōu)化實踐教學(xué)過程
在本課程的實踐教學(xué)過程中,教師可以預(yù)先準(zhǔn)備一個涵蓋內(nèi)容豐富的現(xiàn)成實例。在教師的幫助指導(dǎo)下,讓學(xué)生自由組合成團(tuán)隊,按軟件工程開發(fā)軟件的步驟分解任務(wù),對可行性分析、需求分析、系統(tǒng)設(shè)計等進(jìn)行必要講解,然后對每一步驟提出要求,對每一個團(tuán)隊中的每一個成員提出階段性的任務(wù),并監(jiān)視每一步驟的完成進(jìn)度。
先讓學(xué)生根據(jù)所學(xué)知識以作業(yè)的形式進(jìn)行設(shè)計和編程,教師有針對性的要求使用菜單、窗體和各種控件,對于通用功能,規(guī)定必須使用類的功能來完成任務(wù),然后再上機(jī)實踐。每過一個階段,教師公布現(xiàn)成的程序,讓學(xué)生體會自己編程的創(chuàng)意和不足之處,然后在進(jìn)行下一步驟。在完成每一個模塊功能的基礎(chǔ)上,按照知識的拓展順序,增加新功能,最終達(dá)到功能的完善,課程結(jié)束之時,每個團(tuán)隊根據(jù)自己編寫程序的情況寫出總結(jié)報告,同時要體現(xiàn)出團(tuán)隊中每個成員的工作和作用。
另外,還可以充分利用網(wǎng)絡(luò)教學(xué)平臺,把各種經(jīng)過優(yōu)化的網(wǎng)絡(luò)教學(xué)資源整合到課堂教學(xué)中來,充分利用QQ群、微信群、E-mail信箱、博客、BBS論壇等平臺進(jìn)行交流,可以提高學(xué)生學(xué)習(xí)的積極性。
4 結(jié)語
實例化教學(xué)已經(jīng)演化成為是傳統(tǒng)授課形式的重要組成部分,學(xué)生在具體實例獲得感性認(rèn)識之后,再去理解一般的理論概念就會顯得簡單明了。精選實例、制作動畫等都是需要教師具有較高的素質(zhì)和強烈的責(zé)任心,而主動學(xué)習(xí)則是確保學(xué)生本人掌握所學(xué)內(nèi)容的關(guān)鍵所在。
參考文獻(xiàn):
[1] 張穎. 基于VB.NET圖像處理技術(shù)的實現(xiàn)[J]. 九江學(xué)院學(xué)報(自然科學(xué)版),2017(2).
[2] 童愛紅. VB.NET應(yīng)用教程(第二版)[M].北京:清華大學(xué)出版社,2011.
[3] 蘇文萍. 基于VB.NET的在線考試系統(tǒng)設(shè)計與實現(xiàn)[J]. 計算機(jī)與現(xiàn)代化,2012(8).
【通聯(lián)編輯:王力】