李紅曉,李瑋
摘要:課程教學(xué)的目的在于使學(xué)生掌握和理解知識(shí),并且能夠?qū)⒅R(shí)靈活應(yīng)用于實(shí)際解決問題的過程中。本文通過實(shí)例介紹了案例遞進(jìn)在任務(wù)驅(qū)動(dòng)教學(xué)法中的設(shè)計(jì)與應(yīng)用,使教師的教與學(xué)生的學(xué)在循序漸進(jìn)的過程中進(jìn)行,由淺入深,讓學(xué)生能夠系統(tǒng)掌握理論知識(shí),同時(shí),不斷在實(shí)踐中思考和提高。
關(guān)鍵詞:VB;項(xiàng)目驅(qū)動(dòng);案例遞進(jìn)
中圖分類號(hào):G642.0???? 文獻(xiàn)標(biāo)志碼:A???? 文章編號(hào):1674-9324(2014)41-0189-03
VB即Visual Basic,是由微軟公司開發(fā)的一款“面向?qū)ο蟆钡氖录?qū)動(dòng)編程語言,也包含了協(xié)助開發(fā)環(huán)境。目前,VB是使用人數(shù)最多的一款計(jì)算機(jī)軟件開發(fā)語言,在大部分本科院校的計(jì)算機(jī)專業(yè)或非計(jì)算機(jī)專業(yè)都普遍開設(shè)了《VB程存設(shè)計(jì)》課程,主要是提高學(xué)生的計(jì)算機(jī)應(yīng)用能力和邏輯思維能力,并且能夠逐漸與自己的專業(yè)相結(jié)合,更有效地解決專業(yè)問題,強(qiáng)化專業(yè)創(chuàng)新與專業(yè)研究效果。但是,要想達(dá)到課程開設(shè)的預(yù)期效果,首先要改革課程教學(xué)方法,提高學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)效果?!叭蝿?wù)”與“案例”就是讓學(xué)生身在任務(wù)中和實(shí)際案例中,能夠變被動(dòng)為主動(dòng),不斷學(xué)習(xí),逐步提高,在思考中不斷創(chuàng)新和發(fā)展。
一、任務(wù)驅(qū)動(dòng)與案例遞進(jìn)
1.任務(wù)驅(qū)動(dòng)。任務(wù)驅(qū)動(dòng)教學(xué)法是建構(gòu)主義理論的一個(gè)實(shí)際應(yīng)用,將課程的教學(xué)目標(biāo)設(shè)計(jì)為一個(gè)或多個(gè)任務(wù)或問題去解決,讓學(xué)生明白自己要干什么,也就是學(xué)習(xí)的目標(biāo)是什么,然后在完成任務(wù)的過程中掌握知識(shí)、應(yīng)用知識(shí),從而真正實(shí)現(xiàn)學(xué)習(xí)的目標(biāo)。在任務(wù)驅(qū)動(dòng)教學(xué)中,教學(xué)的組織與設(shè)計(jì)必須以學(xué)生為中心。教師所起的作用主要是“設(shè)置任務(wù)”、“布置任務(wù)”、“引導(dǎo)學(xué)生”、“指導(dǎo)學(xué)生”,而學(xué)生要做的主要是“接受任務(wù)”、“分析任務(wù)”、“設(shè)計(jì)方案”、“驗(yàn)證方案”。
2.案例遞進(jìn)。案例遞進(jìn)是指在任務(wù)驅(qū)動(dòng)過程中所設(shè)計(jì)的案例要有遞進(jìn)性,即一個(gè)案例與下一個(gè)案例之間要有知識(shí)的層次遞進(jìn),將我們所設(shè)置的任務(wù)中的知識(shí)點(diǎn)能夠循序漸進(jìn)、由淺入深、步步為營(yíng)的蘊(yùn)含在遞進(jìn)的案例當(dāng)中。案例的選擇需要考慮到知識(shí)點(diǎn)的銜接性,在講案例的過程中,把各個(gè)知識(shí)點(diǎn)逐一融入進(jìn)去。在由一個(gè)知識(shí)點(diǎn)引入下一個(gè)知識(shí)點(diǎn)的過程中要留給學(xué)生思考的空間,盡量讓學(xué)生提出方案和方法,然后由教師提供“技術(shù)”,即新的知識(shí)點(diǎn)。這樣,為了解決問題和完成任務(wù),學(xué)生就會(huì)主動(dòng)的去學(xué)習(xí)和研究,從而提高學(xué)習(xí)的效果。
二、任務(wù)與案例的設(shè)計(jì)策略和過程
1.任務(wù)的設(shè)置。本文設(shè)置的任務(wù)是設(shè)計(jì)一個(gè)兩位數(shù)的算術(shù)運(yùn)算測(cè)試軟件,具體要求如下:①能夠隨機(jī)給出兩位數(shù)(1~100)加、減、乘、除測(cè)試題。②由用戶填入自己的答案后,能夠判斷其正確與否,并且顯示“√”或“×”。③在用戶答題完畢后,顯示答題情況,并根據(jù)答題情況給出成績(jī)。④用戶可以反復(fù)測(cè)試。基于以上任務(wù),我們將設(shè)置4個(gè)案例,案例中涵蓋以下知識(shí)點(diǎn):①VB環(huán)境及布局;②簡(jiǎn)單程序設(shè)計(jì)步驟;③類、對(duì)象、屬性、事件等基本概念;④RND()函數(shù)的使用;⑤變量、常量;⑥賦值語句;⑦SELECT語句、IF語句;⑧CLS方法;等等。
2.案例設(shè)置。案例設(shè)置前要充分考慮任務(wù)中所涵蓋的知識(shí)點(diǎn)、需要設(shè)置多少案例、先講哪個(gè)案例、案例之間如何銜接等問題。案例中可以再包含有子任務(wù)。子任務(wù),即對(duì)應(yīng)案例要解決的問題或達(dá)到的目標(biāo),可以看作是總?cè)蝿?wù)中的一個(gè)子任務(wù),或者是為完成總?cè)蝿?wù)做的基礎(chǔ)工作。案例也即任務(wù),在案例中完成任務(wù),引導(dǎo)學(xué)生設(shè)計(jì)方案、填加對(duì)象和編寫程序。知識(shí)點(diǎn)是指本案例中所涉及到的課程知識(shí)點(diǎn),在設(shè)計(jì)案例的時(shí)候就要把要講的知識(shí)點(diǎn)考慮在內(nèi)。案例是完成任務(wù)驅(qū)動(dòng)的關(guān)鍵所在,而在案例之間建立銜接問題又是各個(gè)案例能否有效完成驅(qū)動(dòng)的關(guān)鍵,所以我們?cè)谠O(shè)計(jì)案例時(shí)必須考慮到案例遞進(jìn)和銜接問題的關(guān)系。在這里,銜接問題是案例遞進(jìn)的橋梁,更是知識(shí)點(diǎn)自然過渡和更新的主要環(huán)節(jié)。
三、教學(xué)過程與效果
任務(wù)和案例的設(shè)置是整個(gè)教學(xué)過程的基礎(chǔ)。無論教師還是學(xué)生,都要提前構(gòu)建一個(gè)需要完成的目標(biāo)框架。在每一案例學(xué)習(xí)的過程中,都要考慮到其與任務(wù)的關(guān)聯(lián)所在,并不斷向目標(biāo)任務(wù)靠攏。
案例1:教師布置任務(wù):要求學(xué)生建立一個(gè)兩位數(shù)求和的加法器。學(xué)生分析任務(wù):在分析任務(wù)的同時(shí)設(shè)計(jì)方案,最少需要三個(gè)TEXTBOX分別用于輸入加數(shù)、被加數(shù)、兩數(shù)之和;需要兩個(gè)LABEL分別用于標(biāo)識(shí)“+”和“=”;一個(gè)按鈕COMMAND用于觸發(fā)求和的運(yùn)算事件。教師指導(dǎo):如何添加控件、編寫代碼、保存程序;同時(shí),講述類、對(duì)象、屬性、事件等概念并通過案例演示。驗(yàn)證方案:在完成以上案例時(shí),教師主要以“引導(dǎo)”、“指導(dǎo)”為主,學(xué)生主動(dòng)參與分析、設(shè)計(jì)并完成。一般在驗(yàn)證的過程中會(huì)出現(xiàn)“錯(cuò)誤”,比如學(xué)生按照以前的數(shù)學(xué)表達(dá)式,要在TEXT3中得到TEXT1和TEXT2中的數(shù)值的和應(yīng)該為TEXT1+TEXT2=TEXT3,而在VB中這是一種語法錯(cuò)誤。其實(shí)在驗(yàn)證中出現(xiàn)以上的“錯(cuò)誤”屬于正?,F(xiàn)象,這時(shí),教師就要及時(shí)給予講解并引入新的知識(shí)點(diǎn)——“賦值語句”。這樣不僅使知識(shí)點(diǎn)自然過渡,也增強(qiáng)了學(xué)生的學(xué)習(xí)效果,使其認(rèn)知更深刻、更鞏固。有些“錯(cuò)誤”是潛藏在案例中的,有些“錯(cuò)誤”也可以提前設(shè)置,目的都是為了鞏固和加深學(xué)生的認(rèn)知、記憶和對(duì)不同知識(shí)的辨別。例如在講述賦值語句的結(jié)構(gòu)以后,讓學(xué)生更正以上“錯(cuò)誤”,正確書寫為TEXT3=TEXT1+TEXT2。按照賦值語句的格式要求以上表達(dá)式是正確的,然后需要進(jìn)一步進(jìn)行驗(yàn)證:在TEXT1中輸入“123”,在TEXT2中輸入“456”,按照我們的預(yù)期設(shè)計(jì)其答案應(yīng)該為“579”,但是在點(diǎn)擊“求和”按鈕后,TEXT3中顯示“123456”,為什么會(huì)出現(xiàn)這樣的情況呢?由出現(xiàn)的又一個(gè)“錯(cuò)誤”引起學(xué)生的注意和思考,然后教師可以再給出提示并引入下一個(gè)知識(shí)點(diǎn)——“數(shù)據(jù)類型”。這樣,在一個(gè)案例中可以“故意”設(shè)置一些“錯(cuò)誤”,使其將本案例中的知識(shí)更好的聯(lián)系起來,也使學(xué)生時(shí)刻保持注意力,能夠主動(dòng)提出問題并思考。endprint
案例2:教師布置任務(wù):如何實(shí)現(xiàn)“加數(shù)”和“被加數(shù)”由計(jì)算機(jī)隨機(jī)給出,范圍在1~100之間的整數(shù)。學(xué)生分析任務(wù):以上任務(wù)即是如何在TEXT1和TEXT2里面隨機(jī)得到兩個(gè)1~100之間的整數(shù)。需要由程序或函數(shù)解決隨機(jī)問題,并且需要由一個(gè)“事件”觸發(fā),可以再添加一個(gè)按鈕COMMAND3用于“事件”觸發(fā),但是如何解決“隨機(jī)”問題呢?教師指導(dǎo):VB中有隨機(jī)函數(shù)RND,可以隨機(jī)產(chǎn)生0,1)之間的一個(gè)隨機(jī)數(shù),讓學(xué)生思考10*RND的值是多少,并進(jìn)一步促使學(xué)生考慮1~100之間的隨機(jī)整數(shù)如何得到。有了RND函數(shù),就可以解決隨機(jī)數(shù)的問題,那么如何使隨機(jī)數(shù)分別在TEXT1和TEXT2中顯示,可以提示學(xué)生應(yīng)用賦值語句。驗(yàn)證方案:大部分學(xué)生會(huì)直接通過賦值語句將RND產(chǎn)生的隨機(jī)數(shù)賦值給TEXT1、TEXT2,通過驗(yàn)證可以達(dá)到任務(wù)要求。為了不斷向目標(biāo)任務(wù)靠攏,需要進(jìn)一步提出問題:能否使運(yùn)算符(+、-、×、÷)也由計(jì)算機(jī)隨機(jī)產(chǎn)生,這樣就可以由計(jì)算機(jī)自動(dòng)出題了。
案例3:教師布置任務(wù):在案例2的基礎(chǔ)上如何實(shí)現(xiàn)隨機(jī)給出運(yùn)算符?學(xué)生分析任務(wù):首先,要明確現(xiàn)在的目標(biāo)是讓計(jì)算機(jī)隨機(jī)的給出一個(gè)運(yùn)算表達(dá)式,不僅兩個(gè)數(shù)是隨機(jī)的,而且運(yùn)算符也是隨機(jī)的。案例2已經(jīng)實(shí)現(xiàn)了兩個(gè)數(shù)的隨機(jī),現(xiàn)在主要的問題是要實(shí)現(xiàn)運(yùn)算符的隨機(jī)產(chǎn)生??梢远x兩個(gè)個(gè)變量NOp、Op,通過NOp使用隨機(jī)函數(shù)RND實(shí)現(xiàn)隨機(jī)得到1~4四個(gè)整數(shù),通過判斷使Op獲得“+、-、×、÷”中的一個(gè)運(yùn)算符。但是,怎樣讓計(jì)算機(jī)判斷,并且使1~4四個(gè)整數(shù)分別對(duì)應(yīng)四個(gè)運(yùn)算符呢?教師指導(dǎo):給出SELECT語句結(jié)構(gòu)。方案驗(yàn)證:使用RND實(shí)現(xiàn)隨機(jī)加數(shù)、被加數(shù)以及1~4四個(gè)整數(shù),使用SELECT語句實(shí)現(xiàn)1~4四個(gè)整數(shù)與“+、-、×、÷”的對(duì)應(yīng)。其中,需要重新定義的兩個(gè)整型變量Num1和Num2,用于存放兩個(gè)隨機(jī)數(shù);SExp是定義的一個(gè)字符串類型的變量,用于存放隨機(jī)運(yùn)算表達(dá)式;Label1用于顯示最終得到的隨機(jī)運(yùn)算表達(dá)式SExp。因此,我們?nèi)サ袅税咐?中原有的TEXT1和TEXT2。
案例4:教師布置任務(wù):在案例3的基礎(chǔ)上,如何使計(jì)算機(jī)判斷答題者的結(jié)果是否正確,同時(shí),在結(jié)束答題時(shí)給出成績(jī)。學(xué)生分析任務(wù):可以讓計(jì)算機(jī)在隨機(jī)給出運(yùn)算試題的同時(shí)保存一個(gè)正確答案Result,答題者給出答案時(shí)與其比較,如果一致表示正確,如果不一致表示錯(cuò)誤。另外,再定義兩個(gè)變量NOk、NError分別統(tǒng)計(jì)正確與錯(cuò)誤的數(shù)量,這樣在答題結(jié)束時(shí)就可以給出答題者成績(jī)了。對(duì)于正確答案,我們可以在案例3中得到某一運(yùn)算符時(shí),由Result得到一個(gè)相對(duì)應(yīng)于運(yùn)算符的正確答案。那么,如何去判斷答題者的答案是否與Result一致,如何使用NOk、NError來統(tǒng)計(jì)正確與錯(cuò)的答案數(shù)量呢?教師指導(dǎo):給出IF條件語句結(jié)構(gòu)。驗(yàn)證案例:應(yīng)用IF語句編寫代碼。
案例1~4是完成預(yù)定任務(wù)的一個(gè)階梯,給學(xué)生一定的時(shí)間和空間,讓他們逐漸認(rèn)識(shí)VB,遞進(jìn)式汲取知識(shí)、積累知識(shí)。整個(gè)教學(xué)過程保持以學(xué)生為中心,給學(xué)生任務(wù),讓學(xué)生思考,引導(dǎo)學(xué)生,指導(dǎo)學(xué)生,最終完成任務(wù)。
對(duì)于一門課程,可以設(shè)置多個(gè)任務(wù),每個(gè)任務(wù)完成不同的教學(xué)目標(biāo);對(duì)于一個(gè)任務(wù),又可以設(shè)置多個(gè)案例,每個(gè)案例涵蓋不同的知識(shí)點(diǎn)。一個(gè)任務(wù)內(nèi)的案例之間,應(yīng)該是具有遞進(jìn)關(guān)系的,由淺入深、由簡(jiǎn)到繁,做好知識(shí)點(diǎn)的銜接,這樣才能更有效地提高學(xué)生的學(xué)習(xí)情趣和學(xué)習(xí)效果。在本文設(shè)置的任務(wù)中,通過案例1的學(xué)習(xí)后,90%以上的學(xué)生都可以獨(dú)自熟練的建立一個(gè)“兩位數(shù)的加法器”,這樣一個(gè)很簡(jiǎn)單的程序就可以使學(xué)生對(duì)VB的學(xué)習(xí)充滿自信,而且能在案例遞進(jìn)的學(xué)習(xí)中不斷思考,主動(dòng)學(xué)習(xí)。在任務(wù)驅(qū)動(dòng)教學(xué)中,任務(wù)和案例是相輔相成的關(guān)系,任務(wù)為案例制定了目標(biāo)框架,案例又以任務(wù)為中心收集知識(shí)點(diǎn),并不斷向任務(wù)靠攏。所以,沒有了任務(wù),案例就沒有了目標(biāo);沒有了案例,任務(wù)也就失去了動(dòng)力。
參考文獻(xiàn):
[1]袁媛.“案例-任務(wù)驅(qū)動(dòng)”教學(xué)法在《VB程序設(shè)計(jì)》教學(xué)中的研究與應(yīng)用[J].西北成人教育學(xué)報(bào),2013,(3).
[2]金林櫵.基于項(xiàng)目教學(xué)法的VB課程教學(xué)改革與實(shí)踐[J].浙江樹人大學(xué)學(xué)報(bào),2012,(1).
[3]張小衛(wèi),謝巧玲.VB課程項(xiàng)目化教學(xué)改革的探索與實(shí)踐[J].河南科技,2013,(9).
基金項(xiàng)目:2013年山西省高等學(xué)校教學(xué)改革項(xiàng)目(J2013081);山西中醫(yī)學(xué)院專業(yè)建設(shè)與教學(xué)改革第三批立項(xiàng)項(xiàng)目(2013107、2013110)
作者簡(jiǎn)介:李紅曉(1980-),男,山西文水人,碩士,講師,研究方向:計(jì)算機(jī)應(yīng)用技術(shù);李瑋(1982-),男,山西交口人,碩士,講師,研究方向:計(jì)算機(jī)軟件與理論。endprint