李學(xué)相 安學(xué)慶 李信全
摘要本文對(duì)“基于榜樣的案例教學(xué)法”進(jìn)行了探討,并把它應(yīng)用到“Java程序設(shè)計(jì)”教學(xué)實(shí)踐中,取得了較好的教學(xué)效果。
關(guān)鍵詞基于榜樣的案例教學(xué)法任務(wù)驅(qū)動(dòng)模式
1 引言
傳統(tǒng)的教育思想是“學(xué)科本位”,即注重學(xué)科知識(shí)的系統(tǒng)性和理論的嚴(yán)謹(jǐn)性,而現(xiàn)代高職教育強(qiáng)調(diào)的是“能力本位”,即強(qiáng)調(diào)專業(yè)實(shí)踐能力培養(yǎng)的重要性。所以,教學(xué)改革應(yīng)根據(jù)課程的性質(zhì)、內(nèi)容、施教對(duì)象以及對(duì)于職業(yè)技術(shù)能力和創(chuàng)新能力培養(yǎng),選擇切實(shí)可行的教學(xué)模式和教學(xué)方法。我們?cè)诮虒W(xué)過程中引入了印度NIIT的教學(xué)模式,將基于榜樣的案例教學(xué)法應(yīng)用于實(shí)際教學(xué)過程中,取得了較好的教學(xué)效果。下面結(jié)合“Java程序設(shè)計(jì)”課堂教學(xué)談?wù)劵诎駱拥陌咐虒W(xué)法。
2 基于榜樣的案例教學(xué)法
在傳統(tǒng)的教學(xué)方法中,學(xué)生在學(xué)習(xí)某個(gè)知識(shí)要點(diǎn)之前,首先需要熟記一些基本的概念,然后再在老師的講解下學(xué)習(xí)相關(guān)的應(yīng)用,從而由淺入深地理解課程的知識(shí)。雖然此種方法有助于學(xué)生奠定理論基礎(chǔ),但由于其重理論、輕實(shí)踐,而且每門學(xué)科之間關(guān)聯(lián)性較弱,致使學(xué)生很難橫向地將各科知識(shí)聯(lián)系起來,進(jìn)而無法適應(yīng)日后的實(shí)際工作。
所謂“基于榜樣的案例教學(xué)法”就是教學(xué)實(shí)施過程由許多小的教學(xué)循環(huán)組成,每個(gè)教學(xué)循環(huán)中首先提出一個(gè)來自IT行業(yè)或工業(yè)界的實(shí)際問題,接著由專家(也就是教師)用規(guī)范的分析、計(jì)劃、實(shí)施和驗(yàn)證的步驟來解決這個(gè)問題;然后再對(duì)學(xué)生提出相類似的另一個(gè)實(shí)際問題,學(xué)生可以參照專家的方法和步驟來解決該問題,即在專家指導(dǎo)下的實(shí)踐;最后學(xué)生必須獨(dú)立綜合運(yùn)用所學(xué)知識(shí)解決一個(gè)新的實(shí)際問題。通過這樣一種“學(xué)習(xí)-實(shí)踐-提高”的過程,學(xué)生不僅學(xué)到了相應(yīng)的知識(shí),同時(shí)也掌握了相關(guān)技術(shù)的應(yīng)用方法。隨著專家的言傳身教,學(xué)生不僅能盡快掌握知識(shí)點(diǎn),也能在專家示范時(shí)學(xué)習(xí)到相應(yīng)的規(guī)范,如解決問題的步驟、對(duì)問題的標(biāo)準(zhǔn)分析等。
在實(shí)際教學(xué)實(shí)施過程中,采取“基于榜樣的案例教學(xué)法”把教學(xué)過程分為有指導(dǎo)練習(xí)和獨(dú)立實(shí)踐兩個(gè)階段。有指導(dǎo)練習(xí)是指在教師的輔佐下進(jìn)行的實(shí)訓(xùn)練習(xí)。首先教師要把來自于企業(yè)真實(shí)環(huán)境的案例進(jìn)行分解,提出本節(jié)課程擬解決的問題及其實(shí)際背景讓學(xué)生思考,然后教師采取任務(wù)驅(qū)動(dòng)模式,根據(jù)任務(wù)要求逐步給出一個(gè)符合國際編程規(guī)范的樣例。在樣例編寫過程中會(huì)涉及一些較重要的概念,教師可根據(jù)需要有選擇地進(jìn)行講解,但不要偏離本節(jié)實(shí)際問題。樣例講解完成后,教師參照樣例提出類似的題目要求,讓學(xué)生結(jié)合樣例自己動(dòng)手去完成一個(gè)類似的題目。有指導(dǎo)練習(xí)完成后進(jìn)入獨(dú)立實(shí)踐教學(xué)階段,獨(dú)立實(shí)踐是指學(xué)生根據(jù)教師講解的案例,自己獨(dú)立完成一個(gè)相似的題目。具體到每一個(gè)實(shí)訓(xùn),均要來自于實(shí)際項(xiàng)目,每次均有一個(gè)具體任務(wù),提出一些具體要求。
3 基于榜樣的案例教學(xué)法在“Java程序設(shè)計(jì)”課堂教學(xué)中的應(yīng)用
下面以“Java程序設(shè)計(jì)”中如何接收用戶的數(shù)據(jù)為例探討一下“基于榜樣的案例教學(xué)法”的應(yīng)用。
3.1有指導(dǎo)練習(xí)階段
[本節(jié)問題] 在Java中如何接收用戶的數(shù)據(jù)?
[題目名稱及背景] CellGo已用Java開發(fā)了應(yīng)用,并按照如表1所示方式創(chuàng)建了Customer 實(shí)體的類。識(shí)別其用戶接口的控件并寫出接收客戶材料的代碼。
教師分析案例要求,給出任務(wù)單如下:
* 識(shí)別接收客戶材料的控件
* 識(shí)別每個(gè)控件中要顯示的缺省值
* 識(shí)別控件的大小
* 識(shí)別框架窗口的標(biāo)題和大小
* 創(chuàng)建框架窗口
* 加入控件到框架窗口
* 保存、編譯、及執(zhí)行程序
任務(wù)1 識(shí)別接收客戶材料的控件
* 控件用來簡化用戶交互,Java中可用控件是:標(biāo)號(hào)、文本框、文本區(qū)、下拉按鈕、單選按鈕、復(fù)選按鈕、列表及組合框等。
* 結(jié)果
文本框接收單行字母入口,組合框?qū)蝹€(gè)項(xiàng)目選擇顯示下拉式列表,用控件接收客戶材料如表2所示。
任務(wù)2 如表3所示,識(shí)別每個(gè)控件中要顯示的缺省值
任務(wù)3 如表4所示,識(shí)別控件的大小
任務(wù)4 識(shí)別框架窗口的標(biāo)題和大小
* 結(jié)果
顯示客戶材料框架窗口的標(biāo)題是“Customer Details Form”,此窗口的大小是 300 x 300 象素。
任務(wù)5 創(chuàng)建框架窗口
* Javax.swing 包(教師擴(kuò)充內(nèi)容)
* The JFrame class:
用構(gòu)造方法創(chuàng)建你應(yīng)用的框架窗口,包含 setVisible(), setSize (),及 getContentPane() 方法,可用帶EXIT_ON_CLOSE 選項(xiàng)的 setDefaultCloseOperation() 方法將在關(guān)閉框架窗口時(shí)退出應(yīng)用程序。
任務(wù)6 加入控件到框架窗口
* JPanel類(教師擴(kuò)充內(nèi)容):提供了加入組件到框架的更簡單的方法。
* JLabel類(教師擴(kuò)充內(nèi)容):創(chuàng)建標(biāo)號(hào)控件的構(gòu)造符,構(gòu)造符取標(biāo)號(hào)控件的標(biāo)題為輸入。
* JTextField類(教師擴(kuò)充內(nèi)容):創(chuàng)建 textfield控件的構(gòu)造符,構(gòu)造符取textfield 控件的長度為輸入,提供 getText() 和 setText() 方法。
* JList類(教師擴(kuò)充內(nèi)容):創(chuàng)建帶有一組值的列表框的構(gòu)造符, setSelectionMode() 方法用于配置列表框,它提供了方法如:getSelected Value(), getSelectedValues (), 及 setVisibleRowCount (int)。
* JComboBox類(教師擴(kuò)充內(nèi)容):只允許選擇單個(gè)元素,提供 setEditable()方法。
* 動(dòng)作如表5所示。
* 編寫 Customer類的代碼
任務(wù)7 保存、編譯、及演示樣例程序
上述任務(wù)單完成后,教師根據(jù)本節(jié)題目要求給出如下相似題目作為課堂模擬練習(xí)。
[課堂模擬練習(xí)]每當(dāng)新商人加入CellGo,該商人的材料(如:商人的名、地址、電話號(hào)、及商人提供的服務(wù))必須被記錄下來。你需創(chuàng)建接收商人材料的用戶界面。用戶界面的功能說明如下:
* 對(duì)可存放地址字段的字符個(gè)數(shù)不應(yīng)有限制。
* 界面應(yīng)允許為商人選擇多種服務(wù)。
在教師的指導(dǎo)下,課堂模擬練習(xí)必須由學(xué)生親自動(dòng)手去完成。
3.2獨(dú)立實(shí)踐階段
教師先對(duì)本節(jié)的知識(shí)點(diǎn)進(jìn)行小結(jié),然后給出本節(jié)獨(dú)立實(shí)踐題目。這里,獨(dú)立實(shí)踐題目盡可能地來自于實(shí)際項(xiàng)目,每次均有一個(gè)具體任務(wù),提出一些具體要求。學(xué)生要獨(dú)立完成這類題目,教師要進(jìn)行監(jiān)督檢查,并把每位學(xué)生獨(dú)立實(shí)踐的結(jié)果作記錄,并記入課程成績中。
在獨(dú)立實(shí)踐過程中,要制定不同層次的標(biāo)準(zhǔn)。第一個(gè)層次是基本的,體現(xiàn)課程的主要內(nèi)容;第二個(gè)層次略為擴(kuò)充,體現(xiàn)一定的技巧和算法;第三個(gè)層次要求學(xué)生的設(shè)計(jì)無論從界面、風(fēng)格、完整性還是算法、技巧、易用性等方面,均要接近專業(yè)程序員的習(xí)慣和水平。
4 結(jié)束語
采取以企業(yè)實(shí)際項(xiàng)目為主線,把相關(guān)知識(shí)點(diǎn)融入到項(xiàng)目的各個(gè)環(huán)節(jié)中去,層層推進(jìn)項(xiàng)目的“基于榜樣的案例教學(xué)法”,通過對(duì)問題的深化或功能的擴(kuò)充來拓廣知識(shí)面,從而達(dá)到學(xué)習(xí)知識(shí)、培養(yǎng)能力的目的。這種教學(xué)方法可以充分調(diào)動(dòng)學(xué)生學(xué)習(xí)的主動(dòng)性,并將企業(yè)模式和文化融入到教學(xué)中,激發(fā)出學(xué)生的興趣和潛能,打造學(xué)生的個(gè)性和技術(shù)風(fēng)格,讓學(xué)生有一種建立在技術(shù)底蘊(yùn)基礎(chǔ)上的個(gè)性張揚(yáng),樹立培養(yǎng)學(xué)生“編程思想”的教學(xué)理念,養(yǎng)成企業(yè)編程規(guī)范,培養(yǎng)出滿足企業(yè)要求的具有高級(jí)技能的實(shí)用型人才。
(本文蕕得“2005年全國青年教師計(jì)算機(jī)教育優(yōu)秀論文評(píng)比”教學(xué)與研究二等獎(jiǎng))
參考文獻(xiàn)
1 李學(xué)相等.計(jì)算機(jī)文化基礎(chǔ).河南:河南科學(xué)技術(shù)出版社,2002:163~169
2 印度NIIT.Java程序設(shè)計(jì)基礎(chǔ).2004,9:35~41