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