張金玲 張紅艷
1. 特警學院 北京 102211;2. 湖北黃石陽新實驗小學 湖北 黃石 435200
現代教學理論認為,在課堂教學中,教師應以問題為紐帶,教學內容講授以問題為驅動。問題不僅是貫穿整個教學過程的主線和學生學習動力的燃料,也是聯結雙方的最佳紐帶。基于問題的學習理論是構建主義認知心理學派中的一個分支。該理論認為知識不是通過教師傳授灌輸學到的,而是學生在一定情境中,借助教師等的幫助實現的。教學過程中,通過創設問題情景,不但可激發學習興趣,還可以推動學科知識點的習得。設計良好的問題不但可以活躍課堂氣氛、激發學習動力、引導學生積極思維并主動的進行探究活動,還可以深入學生心靈,實現老師與學生、學生與學生之間的情感交流。因此問題驅動教學法是一門值得研究的教學問題。
Visual Basic是面向對象的事件驅動的可視化編程語言,可用于開發windows應用程序,是高校非專業學生一門重要的計算機編程語言課。VB程序設計是一種可視化的編程,即首先進行界面設計,在屏幕中畫出各種圖形對象,然后設置各對象的屬性,接著編寫各對象實現程序功能的代碼。VB程序設計采用事件驅動編程機制,即由用戶操作引發某個事件來驅動完成特定功能,這是與其他面向過程語言的一個重要區別。VB程序設計中將程序和數據封裝于一體,隱藏具體細節,程序開發員只需要關注自己設計的程序功能和屬性,同時VB程序語言繼承自BASIC語言,采用三大基本控制結構,模塊化的程序設計。總的來說,VB程序設計是一個面向對象的結構化程序設計語言。同其他編程語一樣,這門課程既強調理論知識的理解掌握,又要求學生熟練運用編程知識與編程技能解決簡單的編程問題。由于Visual Basic的對象(窗體、控件、菜單)屬性、事件和方法種類繁多,語法知識豐富,學習容易學到后面往前面,枯燥乏味。而普通高校學生經過高考之后來到大學,進入更強調自覺和自學能力的學習環境,調查發現學生上課學習積極性和主動性普遍不高,學生動手操作實踐少,編程能力差。另一方面,學生學習學習風格不同,計算機編程底子不一,學習能力參差不齊。同時,普通高校教師和學生的溝通不夠充分,課堂上師生溝通也不夠,教學模式仍主要采用傳統的以教師為中心的教學模式,學生被動學,教學模式創新性不足,迫切需改進教學策略提高教學效率。
研究表明問題驅動教學法能妥善提高學習積極主動性,促進理論和實踐相結合,提高教學效果。問題驅動教學法強調“以學生為中心,以教師為主導”,強調通過創設復雜的、有意義的問題情境,設計驅動問題,激發學生主動思考積極思維,通過自主探索和合作交流等方式,在問題解決中習得知識與技能。
一切思維和能力的培養皆依賴于問題的發現、分析與解決。實踐表明,以“問題驅動”為核心的教學法,以學生為主體,教師為主導,可激發學生求知欲,提高學習積極性,適應于目前《VB程序設計》課程教學,同時可以培養學生問題解決能力[1]。
問題驅動教學方法即以問題驅動教學,以問題為核心開發組織教學內容,通過問題設計,讓學生圍繞問題解決,實現學習目標,獲得知識技能一種學習方法。教師在這個過程中是問題的設計者、問題情境創設者、問題提出者、教學流程設計者和問題評估者。新知識、新技能并不是老師直接灌輸給學生,而是隱藏在問題背后,由學生通過分析解決問題逐步理解而消化吸收。問題驅動的核心思想是在教學過程中,總是不斷拋出事先設計的問題,不斷的引導學生分析問題,然后通過不同的方法去解決。在問題解決的過程中,逐步理解新知識點,掌握新技能。問題驅動教學法對教師的要求更高了,教師必須具備較強的課堂掌控能力和課堂教學引導能力。
以“問題驅動”為核心的教學活動過程可從創設情境提出問題,分析問題,解決問題和評價總結等環節展開。在教學過程中,教師提前準備好問題。問題設計不僅要求教師對教學內容十分熟悉,同時還要能掌握學生學習情況。設計良好的問題,需結合學生學情,按照教學內容、教學目標來設計問題。在教學過程中,教學圍繞著學生尋求問題解決方案展開,教師的作用變成指導學生分析問題,提煉出新知識新技能,通過巧妙提出各種小問題啟發思考,通過創設情境提出思考題鼓勵學生討論交流,最終運用多種方法解決問題。問題驅動教學法使得學生在積極主動地學習過程中,潛移默化的構建起新知識與新技能的框架。由上可見,好的問題決定教學成敗的關鍵,是有效教學的重中之重,是問題驅動教學法是否有效的根本,因此驅動問題的設計是關鍵。
(1)導入問題通常在情境中提出,具有啟發性和趣味性,能激發學生求知欲,促進學生積極主動思考。學生普遍對當下熱門的影視劇、生活中遇到的懸疑、有比較波折情節的事物、古今中外經典歷史事件、與自身未來可能從事職業相關問題等感興趣。因此問題情境創設,需要貼近學生敏感的、感興趣或者有啟發性的方面進行創設[2]。
(2)驅動問題同樣在有情境的正式任務中提出和設計,設計的問題不超綱,是教學大綱規定內容且為教學重點或難點。教學有法無定法,一切教學方法終極目的是實現對學生的培養,是實現已經確定下來的教學目標。因此,驅動問題設計不是天馬行空的設計,需要在教學大綱、課程目標、培養方案、教學內容框架內的問題。
(3)設計的問題有連貫性、系統性。問題的分析與求解,與教學設計流程一致,可在潛移默化中使學生將新舊知識點串起來,深入思考,掌握所學技能。以問題為中心,基于教學大綱,服務于教學目標實現,落腳于學生知識技能的獲得。對于一堂課問題設計,需要成體系、成系統,如剖洋蔥一樣,一層接著一層,一環接著一環,連貫而行,隨著一個個問題的解決,最終讓學生在主動思考積極探索中解決問題,潛移默化的學到了知識。
VB編程的基本思路是數據輸入、數據操作處理和數據輸出。因此,計算機的輸入輸出是程序設計語言最基本的操作,也是編程語言中最基本的語法,通常在一門課之初就要講到輸入與輸出的語法知識。print方法是VB中最常用的輸出方法。本課主要采用問題驅動教學法,首先創設問題情境引出本課主題,接著拋出三個看似簡單問題引出本節課重點內容,明確教學重難點,并使學生迅速集中注意力。接著開始進入新課講授,逐步分析問題解決問題,并通過vb二級真題、例題、思考題等驅動問題,啟發思考,引導學生討論交流,結合VB編程特點,在操作實踐中測試問題,最終通過各種方法解決問題,最后進行問題評價和鞏固,對本堂課教學內容進行總結。實踐證明,問題驅動教學法是否有效,關鍵取決于驅動問題設計[3]。
本次課中驅動問題設計的目的,是為了讓學生在掌握VB新知識新技能的同時,培養學生深入思考,舉一反三等高級思維和學習能力。設計的方法,圍繞教學目標實現,結合學生學習特點、學習情況及日常學習生活中的經驗,精心設計課堂驅動問題。問題設計主要從以下幾個方面展開。
(1)設計導入問題引入新課
課前設計情境問題,通過問題導入教學,抓住學生注意力,明確學習方向和重點。本例中開篇精心設計三問,在課前便拋出這三個問題,請學生們思考,接著展開本節課重難點內容,帶著問題明確教學內容,學生開啟學習之旅。
(2)設計例題或案例以剖析難點
通過案例或例題,可由淺入深,層層深入,調動學生學習積極性,并在潛移默化逐步領悟知識點習得新技能。針對知識點,尤其是學生易錯的、學習中易卡殼的或者過渡性強的知識點,需要動腦筋剖析,設計問題的層次和邏輯。通過問題案例設計和案例解析,如剝洋蔥一般,通過一個個小問題,引導啟發學生開動腦筋,督促動手實踐逐步探索,并把知識點各個角度的拓展問題一一解決,使學生逐步完善VB知識框架[4]。
經典例題通常可以直觀地將新的概念和原理運用起來,可以實現松耦合,甚至集成。一個問題提出和解決,進一步可通過更改問題的一個點提出新的問題,融入更深一層的新知識點并拓展思維。舉個例子:講解知識點Print方法分隔符中逗號與分號的區別,輸出字符串與輸出數值型數據的格式上的區別,是本課的一個難點,也是大綱中的重要考點。根據問題驅動教學法的思想,設計如下代碼:

測試運行結果,提出問題:請分析各輸出的數字及字符所在列號。
問題提出后,學生們踴躍討論,積極思考交流,在尋找正確答案的過程中,逐步構建起自己的程序設計和新知識的框架,并將難以理解的概念原理,消化吸收掌握。
這里要注意設計的案例及問題需緊跟教學大綱,緊扣考點,鎖定二級真題,設計知識點對應考點真題,幫助學生消化理解[5]。
(3)案例思考題設計,促進討論交流,提高實驗實踐動手能力
設計上機操作題,引導學生動手實踐,并運用新知解決實際問題。綜合案例題,引導學生動手實踐,并運用新知解決實際問題。
(4)查漏補缺課堂習題促進思考,輕松習得技能
VB描述性的語法繁多,容易導致教學枯燥乏味。設計小問題,讓學生們在我問你答的互動中,輕松掌握枯燥的語法。課堂習題、課后布置作業,可檢驗學生學習效果,查漏補缺,鞏固練習。