劉偉 黃辛迪 李小智
摘 要:“Java面向?qū)ο蟪绦蛟O(shè)計”是計算機相關(guān)專業(yè)一門非常重要的專業(yè)基礎(chǔ)課。在該課程中引入以榜樣為中心的教學(xué)方法——MCLA,結(jié)合項目驅(qū)動式教學(xué)方法,以項目小實例為目標(biāo),將知識點講解融入到教師課堂演示中,并基于項目設(shè)置一系列課后練習(xí)和獨立實踐,可以很好地調(diào)動學(xué)生的學(xué)習(xí)興趣,提高學(xué)生的實踐動手能力,取得良好的教學(xué)效果。
關(guān)鍵詞:Java面向?qū)ο蟪绦蛟O(shè)計;以榜樣為中心的教學(xué)方法;教學(xué)改革
中圖分類號:G642 文獻(xiàn)標(biāo)志碼:A 文章編號:2096-000X(2017)10-0039-02
Abstract: Java object-oriented programming is a very important basic course for computer-related majors. Model Centered Learning Architecture(MCLA)is introduced into this course. Combining with the project-driven teaching method, some small projects integrated with knowledge points are used in class presentation. Moreover, a series of after-school exercises and independent practice are based on projects. The results show that the MCLA can improve students' learning interest and practice abilities, and help to obtain better teaching effects.
Keywords: Java object-oriented programming; Model Centered Learning Architecture; teaching reform
引言
“Java面向?qū)ο蟪绦蛟O(shè)計”是計算機科學(xué)與技術(shù)、軟件工程等專業(yè)的必修課程之一。在本課程中,學(xué)生將學(xué)習(xí)當(dāng)前主流面向?qū)ο缶幊陶Z言——Java語言的語法,熟悉Java面向?qū)ο缶幊滔嚓P(guān)知識,學(xué)會使用Java語言實現(xiàn)圖形用戶界面,學(xué)習(xí)使用Java語言操作文件和數(shù)據(jù)庫,同時對JDK類庫有一定了解,能夠熟練使用一些常用的Java類,并學(xué)會使用Java語言開發(fā)簡單的基于C/S結(jié)構(gòu)的桌面軟件。該課程是學(xué)生學(xué)習(xí)“Java EE應(yīng)用開發(fā)”、“Android移動開發(fā)技術(shù)”等Java體系課程的基礎(chǔ),也是提升學(xué)生編程水平和應(yīng)用開發(fā)能力的一門核心基礎(chǔ)課程。
MCLA全稱為Model Centered Learning Architecture,即以榜樣為中心的教學(xué)方法,是印度國家信息技術(shù)學(xué)院(NIIT, National Institute of Information Technology)所采用的一種在專家引導(dǎo)下獨立解決實際問題的教學(xué)和學(xué)習(xí)方法[1]。MCLA將學(xué)習(xí)過程分解為許多小的教學(xué)循環(huán),每個循環(huán)包含五個步驟,分別為:提出目標(biāo)(Object)、知識學(xué)習(xí)(Knowledge)、教師演示(Demonstration)、學(xué)生實踐(Practice)、教學(xué)總結(jié)(Summary)。每個教學(xué)循環(huán)從一個實際問題入手,由教師采用預(yù)先編制的步驟來解決問題,再對學(xué)生提出另一個類似的實際問題,學(xué)生參考教師的方法解決該問題,這個過程稱之為專家指導(dǎo)實踐。之后,學(xué)生將所學(xué)知識綜合運用到一個新的實際問題中,完全由學(xué)生獨立完成,稱之為無指導(dǎo)實踐或獨立實踐。通過專家指導(dǎo)實踐和獨立實踐,逐步培養(yǎng)學(xué)生獨立分析問題和解決問題的能力。MCLA方法獨特的教學(xué)模式非常適合應(yīng)用性和實踐性較強的課程,在一些計算機專業(yè)課程的教學(xué)過程中得到較為廣泛的應(yīng)用[2-4]。
一、MCLA方法的應(yīng)用實踐
(一)與項目驅(qū)動式教學(xué)方法相結(jié)合
MCLA方法的實施通常會基于一個較為完整的項目,該項目將劃分成若干個小的目標(biāo)問題。教師在課堂教學(xué)中以這些目標(biāo)問題為入口,演示如何解決問題并在講解過程中引入相關(guān)知識點。在“Java面向?qū)ο蟪绦蛟O(shè)計”課程的實際教學(xué)過程中引入了三個項目,“Motel 168客房管理系統(tǒng)”作為教師課堂演示項目,“Starbar餐廳管理系統(tǒng)”作為專家指導(dǎo)實踐項目,“SunnySport庫存管理系統(tǒng)”作為獨立實踐項目。其中,SunnySport庫存管理系統(tǒng)是一款用于管理酒店客房信息的軟件,包括客房預(yù)訂、客房入住登記、客房信息查詢、換房、客戶消費記錄查詢及統(tǒng)計、退房及結(jié)賬等功能;Starbar餐廳管理系統(tǒng)是一款應(yīng)用于餐飲企業(yè)的信息管理軟件,包括用戶管理、餐桌管理、預(yù)訂餐桌、餐桌分布區(qū)管理、外賣管理、報表管理、菜譜管理、點餐、前臺結(jié)賬等功能;SunnySport庫存管理系統(tǒng)是一款用于管理庫存信息的軟件,包括商品類別管理、商品管理、供應(yīng)商管理、入庫管理、客戶管理、出庫管理、系統(tǒng)管理和報表管理等功能。
基于這三個項目,將它們合理分解成一系列小案例,在MCLA方法指導(dǎo)下以具體案例來驅(qū)動教學(xué),讓學(xué)生在“學(xué)習(xí)→實踐→提高”的過程中發(fā)揮主動性,通過實際項目來掌握所學(xué)知識,提高知識應(yīng)用能力和實踐動手能力。
(二)課堂教學(xué)的改革與實踐
在“Java面向?qū)ο蟪绦蛟O(shè)計”課堂教學(xué)中采用MCLA教學(xué)方法,每一章內(nèi)容的講解都圍繞一個小實例開展,并運用所學(xué)知識提供該實例的解決方案。例如在講解“圖形用戶界面”時,教師首先給出一個簡單的“客房入住登記界面”截圖,讓學(xué)生對教學(xué)目標(biāo)有一個感性的認(rèn)識,再學(xué)習(xí)常用的AWT/Swing界面組件類,包括這些類的常用屬性和方法等,最后回到目標(biāo)問題,詳細(xì)演示如何運用所學(xué)的界面組件類編程實現(xiàn)“客房入住登記界面”。
教師按照提出目標(biāo)問題、學(xué)習(xí)相關(guān)知識、運用所學(xué)知識解決目標(biāo)問題的步驟,在課堂上通過目標(biāo)問題引出所學(xué)知識,再結(jié)合實例代碼逐步演示如何實現(xiàn)目標(biāo)問題。在此過程中,學(xué)生可以通過源于實際問題的案例掌握相關(guān)知識,加深和鞏固對所學(xué)知識的理解和應(yīng)用能力。
(三)實踐教學(xué)的改革與實踐
MCLA方法強調(diào)學(xué)生的學(xué)習(xí)自主性和創(chuàng)造性,實踐教學(xué)環(huán)節(jié)尤為重要。MCLA方法的實踐環(huán)節(jié)由兩部分組成,分別是專家指導(dǎo)實踐和獨立實踐。
在每一個教學(xué)循環(huán)中,教師針對課堂教學(xué)內(nèi)容,結(jié)合專家指導(dǎo)實踐項目,提出一個與教師演示項目類似的小練習(xí),學(xué)生參照教師的演示流程完成該練習(xí),通常專家指導(dǎo)實踐練習(xí)在實驗課上完成。雖然這些練習(xí)源自另一個項目,但是所運用的知識及開發(fā)難度與課堂演示實例類似。例如,“圖形用戶界面”對應(yīng)的練習(xí)題為餐廳管理系統(tǒng)的“點餐界面”,與課堂演示實例“客房入住登記界面”基本相似,學(xué)生可按照教師課堂演示的步驟完成該練習(xí),在練習(xí)過程中教師給予一定的指導(dǎo),解決部分學(xué)生在實踐過程中所遇到的問題。
除了在實驗課中的專家指導(dǎo)實踐外,學(xué)生在課后還需要完成獨立實踐項目,在本課程中所采用的獨立實踐項目為SunnySport庫存管理系統(tǒng),該系統(tǒng)的復(fù)雜度較前兩個項目有所增加,學(xué)生需要運用所學(xué)知識獨立解決所遇到的問題,在具體實施時可以將3-5個學(xué)生組成一個學(xué)習(xí)小組。通過獨立實踐,學(xué)生可以將所學(xué)知識應(yīng)用到另一個項目中,以達(dá)到觸類旁通、學(xué)以致用的目的。在此過程中,學(xué)生可以充分發(fā)揮創(chuàng)造力,從多方面對項目進(jìn)行創(chuàng)新。獨立實踐項目還可以作為“Java面向?qū)ο蟪绦蛟O(shè)計”課程期末的綜合項目,學(xué)生將一個學(xué)期所有獨立實踐整合在一起,適當(dāng)修改和完善,構(gòu)造出一個完整的項目,在項目整合過程中可以較為全面和系統(tǒng)地復(fù)習(xí)本課程所學(xué)知識,并掌握如何運用這些知識解決實際問題。通過獨立實踐,可以更好地調(diào)動學(xué)生的學(xué)習(xí)主動性,提高其分析問題和解決問題的能力。
二、結(jié)束語
在“Java面向?qū)ο蟪绦蛟O(shè)計”課程中引入MCLA方法并結(jié)合項目驅(qū)動式教學(xué)方法,不僅讓學(xué)生能夠更好地理解和掌握J(rèn)ava語言的基礎(chǔ)知識,還能夠很好地提升學(xué)生的實踐動手能力。教師結(jié)合知識點給學(xué)生演示項目小實例,在演示過程中灌輸知識、傳授經(jīng)驗,提高了學(xué)生的學(xué)習(xí)興趣和學(xué)習(xí)效率。同時,通過一系列圍繞某一具體項目的練習(xí),讓學(xué)生及時消化和理解所學(xué)知識并學(xué)習(xí)如何在軟件開發(fā)中應(yīng)用這些知識,有助于提升學(xué)生綜合素質(zhì),改進(jìn)課程教學(xué)質(zhì)量。
參考文獻(xiàn)
[1]尹立坤,宋雪蓮.印度NIIT培訓(xùn)的MCLA方法在教學(xué)中的應(yīng)用[J].軟件導(dǎo)刊:教育技術(shù),2008(5):82-83.
[2]楊樺,周靜,時云峰.MCLA教學(xué)方法在計算機專業(yè)課程教學(xué)中的研究與應(yīng)用[J].中國科技博覽,2009(16):158-159.
[3]邵斐,常子楠.基于MCLA教學(xué)法的Java課程教學(xué)改革的探索[J].赤峰學(xué)院學(xué)報:自然科學(xué)版,2009,25(10):195-196.
[4]胡偉儉.基于MCLA的“Web程序設(shè)計”教學(xué)方法研究[J].計算機教育,2009(17):108-109.