摘 要: 在互聯(lián)網(wǎng)和大數(shù)據(jù)時(shí)代,Java語言是一種重要的編程工具。本文主要討論如何采用案例教學(xué)法開展《Java程序設(shè)計(jì)》課程教學(xué),及今后教學(xué)應(yīng)完善的環(huán)節(jié)。
關(guān)鍵詞: 案例教學(xué)法 《Java程序設(shè)計(jì)》 實(shí)施步驟
隨著互聯(lián)網(wǎng)的飛速發(fā)展及大數(shù)據(jù)時(shí)代的來臨,基于Web的服務(wù)應(yīng)用開發(fā)及對(duì)大數(shù)據(jù)的存儲(chǔ)、挖掘等都需要大量的軟件工程師。Java語言由于其面向?qū)ο?、跨平臺(tái)、分布式、安全等優(yōu)良特性而成為眾多IT企業(yè)首選的開發(fā)工具。根據(jù)TIOBE2013年10月份發(fā)布的編程語言排名榜,Java語言從業(yè)人員占16.107%,排在第2位,僅次于C語言(占17.246%)。有人預(yù)測,2013年中國的軟件產(chǎn)值將突破8萬億元,這無疑為信息類專業(yè)的大學(xué)畢業(yè)生提供了廣闊的舞臺(tái)。然而,實(shí)際情況卻差強(qiáng)人意,一方面是IT企業(yè)急需Java程序員,另一方面信息專業(yè)的很多應(yīng)屆畢業(yè)生卻為找不到工作而發(fā)愁。表面上看是學(xué)校培養(yǎng)的人才不符合企業(yè)的直接需求,其實(shí)直接原因是學(xué)校內(nèi)的課程教學(xué)沒有達(dá)到好的教學(xué)效果。目前,很多高等院校都采取“課堂+實(shí)驗(yàn)”的教學(xué)方式。在這種教學(xué)方式下,教師根據(jù)教材在課堂上利用課件講授理論知識(shí),課后組織學(xué)生做少數(shù)幾次實(shí)驗(yàn)。這種教學(xué)方式違背了Java語言的學(xué)習(xí)規(guī)律,導(dǎo)致的直接后果就是學(xué)生對(duì)面向?qū)ο蟮乃枷肜斫獠簧睿瑒?dòng)手能力差。近些年,有些學(xué)校就《Java程序設(shè)計(jì)》課程的教學(xué)大綱、教學(xué)方法、教學(xué)手段、實(shí)踐教學(xué)、雙語教學(xué)等諸多方面開展了教學(xué)改革,并取得了較好的效果。筆者所在學(xué)校也開展了該課程的教學(xué)改革實(shí)踐。接下來,筆者就介紹如何在《Java程序設(shè)計(jì)》課程教學(xué)中實(shí)施案例教學(xué)法的策略。
一、案例教學(xué)法的優(yōu)勢
案例教學(xué)法,雖然在古代的教學(xué)中也有應(yīng)用,但其正式出現(xiàn)可以追溯到1870年哈佛大學(xué)克里斯托弗·哥倫姆布斯·朗道爾(Christopher Columbus Langdell)教授的《合同法案例》一書。[1]所謂案例教學(xué)法是指在課堂教學(xué)中以真實(shí)的案例為載體來組織內(nèi)容的一種教學(xué)方法。案例教學(xué)法符合人的認(rèn)知規(guī)律由感性認(rèn)識(shí)(案例)到理論認(rèn)識(shí),很受學(xué)生歡迎,因而,它被廣泛應(yīng)用到諸如法學(xué)、MBA、醫(yī)學(xué)等多個(gè)學(xué)科的教學(xué)中。最著名的例子當(dāng)屬哈佛大學(xué)商學(xué)院和法學(xué)院采用案例教學(xué)法取得的成功。例如,美國500強(qiáng)企業(yè)中三分之二的高層決策者畢業(yè)于哈佛大學(xué)商學(xué)院,1998年全美前500位律師事務(wù)所的創(chuàng)立者二分之一畢業(yè)于哈佛大學(xué)法學(xué)院。[2]這樣的成績得益于兩家學(xué)院均采用了案例教學(xué)法。
二、案例教學(xué)法在《Java程序設(shè)計(jì)》課程教學(xué)中的組織實(shí)施
案例教學(xué)法貫穿課前構(gòu)建案例、課堂演示案例和課后加強(qiáng)編程練習(xí)三個(gè)階段。
1.課前構(gòu)建案例
案例教學(xué)法實(shí)施的效果與教師所選案例密切相關(guān)。好的案例能起到良好的教學(xué)效果,反之,則會(huì)降低學(xué)生的學(xué)習(xí)興趣。那好、壞案例的評(píng)價(jià)標(biāo)準(zhǔn)又是什么呢?我認(rèn)為好案例應(yīng)符合三個(gè)標(biāo)準(zhǔn):(1)案例具有簡單的結(jié)構(gòu)。教師在選擇案例時(shí),應(yīng)考慮選擇直觀、簡單的,避免太過復(fù)雜的案例。(2)案例應(yīng)接近學(xué)生的認(rèn)知水平。應(yīng)選擇那些學(xué)生日常能夠接觸到、便于理解的,而不要選擇那些遠(yuǎn)離實(shí)際的、抽象的案例。根據(jù)教學(xué)經(jīng)驗(yàn),學(xué)生對(duì)熟悉的事務(wù)有親切感,也更愿意順著教師的思路聽下去,也就是“深入淺出”。(3)案例包含教學(xué)大綱的所有知識(shí)點(diǎn),允許案例之間具有連貫性,但案例之間不能包含過多的重復(fù)知識(shí)點(diǎn)。案例應(yīng)該圍繞課程大綱來組織安排。與教學(xué)大綱無關(guān)的案例即使生動(dòng),也不能用做課堂案例。案例所蘊(yùn)含的知識(shí)點(diǎn)應(yīng)該覆蓋大綱的知識(shí)點(diǎn),內(nèi)容重復(fù)度過高的案例應(yīng)該盡量減少。筆者在上課前根據(jù)上面3條標(biāo)準(zhǔn),圍繞根據(jù)教學(xué)大綱,從教材、互聯(lián)網(wǎng)及參考書等多方面搜集素材,精心選擇教學(xué)案例。例如,在講授java多態(tài)性時(shí),筆者會(huì)選擇一個(gè)簡單明了的案例來闡述多態(tài)性機(jī)制。首先,構(gòu)建一個(gè)Geometry類,該類具有computeArea()方法。然后在這個(gè)類下派生出Triangle類,Rectangle類,Circle類,并在這些子類中重寫computeArea(),覆蓋父類的方法。最后,在main()方法,生成每個(gè)子類的對(duì)象,聲明父類的變量,讓父類變量引用子類對(duì)象。通過“父類變量名.computeArea()”來完成每個(gè)對(duì)象的面積計(jì)算。學(xué)生通過這個(gè)案例就會(huì)發(fā)現(xiàn),即使都調(diào)用父類變量名.computeArea(),但調(diào)用的方法卻完全不一樣,這是由于父類變量名所引用的對(duì)象不同而導(dǎo)致的。程序在編譯時(shí)并不清楚調(diào)用哪個(gè)方法,只有在運(yùn)行時(shí)才能捆綁具體的方法。一邊演示這個(gè)案例,一邊描述程序運(yùn)行機(jī)制,則學(xué)生很快就會(huì)明白Java的多態(tài)機(jī)制,這比單純講解抽象理論要好得多。
2.課堂演示案例
隨著教育技術(shù)的發(fā)展,越來越多的課程使用多媒體。然而,大多數(shù)教師局限于課前把教學(xué)內(nèi)容詳細(xì)地制成PPT幻燈片,課堂上邊講解邊放映給學(xué)生看。這種方式很難使學(xué)生在課堂上集中注意力,在課后也很難記憶內(nèi)容。課堂演示案例要求除了核心的知識(shí)用PPT表現(xiàn)以外,所有案例的代碼必須在課堂上逐條輸入。這樣,一方面能讓學(xué)生熟悉Java的基本語句,另一方面可讓學(xué)生進(jìn)入編程狀態(tài)。在課后與學(xué)生交流時(shí)發(fā)現(xiàn),大多數(shù)學(xué)生表示感覺編寫代碼不像以前那樣高深了,而是一件非常有趣的事,尤其是課堂上觀看了老師編寫代碼的全過程后,有立即想寫代碼的沖動(dòng)。
3.課后加強(qiáng)編程練習(xí)
按照教學(xué)大綱,《Java程序設(shè)計(jì)》課程只有12個(gè)課時(shí)。對(duì)于任何一門編程語言來說,這些實(shí)驗(yàn)課時(shí)都是遠(yuǎn)遠(yuǎn)不夠的。因此,教師應(yīng)該布置與課堂教學(xué)同步的適量的操作題給學(xué)生,讓學(xué)生在課后完成,以加深對(duì)知識(shí)內(nèi)容的理解,鞏固課堂所學(xué)的知識(shí)。
實(shí)施了一個(gè)學(xué)期的《Java程序設(shè)計(jì)》案例教學(xué)后,筆者發(fā)現(xiàn)學(xué)生對(duì)Java的學(xué)習(xí)興趣明顯較往屆學(xué)生要高,動(dòng)手編程能力也較強(qiáng)。但也存在不足,例如:包括課堂教學(xué)視頻、教學(xué)案例、在線學(xué)習(xí)等多種形式使網(wǎng)絡(luò)教學(xué)資源有所缺失。這也是在以后的教學(xué)中要不斷完善的地方。
參考文獻(xiàn):
[1]張潤蓮,張向利,葉進(jìn).案例教學(xué)法及其運(yùn)用[J].桂林電子工業(yè)學(xué)院學(xué)報(bào),2004,24(4):102-105.
[2]李嵐.案例教學(xué)法探析[J].云南財(cái)貿(mào)學(xué)院學(xué)報(bào),2004,20:347-349.
基金項(xiàng)目:邵陽學(xué)院教改項(xiàng)目Java程序設(shè)計(jì)課程教學(xué)改革研究與實(shí)踐(編號(hào):2012JG14)和湖南省教改項(xiàng)目(編號(hào):[2011]315號(hào)352)。