沈學華 丁衛(wèi)平
摘要:針對Java程序設計課程教學的現狀和問題,提出了案例教學法,系統(tǒng)介紹了案例教學法的意義和內容,討論了案例的設計要求、實施要點,并通過綜合案例將若干個知識要點結合起來,提高了學生的學習興趣,培養(yǎng)了學生的綜合編程能力,顯著提高了Java程序設計課程的教學效果。
關鍵詞:程序設計;教學方法;案例教學法
中圖分類號:G424 文獻標識碼:A 文章編號:1009-3044(2016)36-0137-02
隨著互聯網技術的飛速發(fā)展,越來越多的企業(yè)選用不同的信息技術來提升企業(yè)和產品的競爭力,隨之而來的是對軟件開發(fā)人員的大量需求[1]。針對軟件從業(yè)人員的良好就業(yè)前景,國內的許多高校陸續(xù)開設了各種信息技術的課程,其中Java程序設計作為一門核心主干課程,在軟件相關專業(yè)中均有開設。Java程序設計課程作為一門專業(yè)性、實踐性很強的課程,如何培養(yǎng)學生既有較強的理論功底,又有豐富的實踐開發(fā)能力,能夠積累足夠的項目開發(fā)經驗,以適應社會和企業(yè)對Java語言相關從業(yè)人員的要求,日益成為Java程序設計課程教學中迫切需要解決的問題。
1 Java課程教學的現狀
Java程序設計作為一門實踐性很強的課程,在國內高校中開設的時間普遍不長,教學經驗和教學技巧的積累很少,在課程的教學過程中存在著不同的問題。
1)教學內容設置不合理
據統(tǒng)計,Java程序設計課程一般在第三學期開設,大部分學生已經學習了C/C++語言等相關計算機語言課程,學生對有關數據類型、數組、結構體、函數、類等概念已經有了一定的了解;目前教學過程中采用的Java教材,對上述概念和技術細節(jié)仍然進行了重點介紹。學生在接受這部分知識點時,一方面不重視,覺得自己已經學過,不用再認真聽了,另一方面,降低學生學習該課程的興趣,從而影響這門課程的教學效果。
2)教學方式以教師授課為主
Java語言作為一門誕生于互聯網時代的高級程序設計語言,它不同于以前的C/C++、Visual Basic等傳統(tǒng)語言,是一種純面向對象的編程語言,與其他語言相比,有很多異同點。在目前的教學過程中,仍然按照傳統(tǒng)的教學經驗進行教學,一個章節(jié)一個章節(jié),按部就班地講解各個知識點,學生不能主動地參與到教學過程中來,導致課堂氣氛較為壓抑,學生的學習興趣低落。同時,由于學校教學計劃的限制,在教室上完理論課后,往往要過一個星期才能進行編程驗證。
3)授課案例缺乏連貫性、系統(tǒng)性
教師在授課過程中,往往根據知識點的需要,即興地挑選實例以幫助學生加深對所講內容的理解。學生在整個學習過程中接觸的示例都是孤立的,面向一個個知識點的,缺乏必要的連貫性和一致性。在完成Java程序設計課程的學習后,由于沒有學習和參與一個完整案例的開發(fā),導致學生無法系統(tǒng)地梳理該課程的知識體系,不能形成系統(tǒng)的軟件開發(fā)能力。
針對以上問題,為了改進Java程序設計課程的教學效果,提高學生對該課程的學習興趣,培養(yǎng)和提高學生的實踐編程能力,本文提出了新的教學理論和教學方法——案例教學法。
2 案例教學法的基本含義
在1920年代,美國哈佛商學院提出了一種基于案例的教學方法[2],教師和學生通過共同分析、討論商業(yè)管理中的真實案例,激發(fā)了學生的學習興趣,提高了學生進行自我分析、自我決策的水平。隨著計算機技術的發(fā)展,該方法在計算機相關課程的教學過程中得到了日益廣泛的使用。在教學過程中,教師設計了一個或多個覆蓋整個課程或某個章節(jié)的綜合案例。借助于該案例,將知識點講授給學生,讓學生在案例的分析、思考和討論的過程中,加深對知識點的掌握和理解,熟悉所學知識在實際軟件開發(fā)中的使用場景和方法[3]。
不同于傳統(tǒng)的教學方法,案例教學法中具有以下顯著的特點:
1)目的明確:所選案例具有明確的指向性,針對某個具體的章節(jié)或知識塊;
2)綜合性強:教學中選擇的案例必須具有一定的綜合性,需要覆蓋多個章節(jié)、甚至是整個課程;
3)實踐性強:案例必須是實際開發(fā)過程中可能或者是將要遇到的開發(fā)任務;
4)具有一定的啟發(fā)性:設計的案例必須有一定的啟發(fā)性和外延性,通過發(fā)揮學生的主觀能動性,能夠充實所學習的案例。
3 案例教學法的實施
案例教學法在Java程序設計課程中的使用主要涉及兩個方面的問題,一個是案例的科學設計,另一個是案例在教學過程中的實施。
1)案例的設計
根據上文中的介紹,案例教學法具有多個顯著的特點,與此相對應的案例設計是該教學法能夠充分發(fā)揮作用的必要條件之一。沒有好的案例設計,就不能很好地實施案例教學法。與C/C++語言相比,Java程序設計語言是一種純面向對象的編程語言,是一種分布式的、可移植的、解釋性的程序語言?;贘ava語言和Java程序設計課程本身的特點,設計的案例如表1所示:
從表1可以看出,第5、8、9個案例為“綜合案例”,與簡單案例不同,這些綜合案例將之前學習的知識點結合起來,起到了復習和承上啟下的作用。值得指出的是,第9個案例包含了Java程序設計課程的所有知識點。通過這個案例的講解與實施,學生可以對這門課程有一個全面的回顧和總結,同時通過這個“準實際”項目的開發(fā),可以對軟件項目開發(fā)有一個整體的了解和把握。
2)案例的實施過程
在進行正式的課程教學之前,教師應該完整演示“簡單/綜合案例”的詳細攻略,使學生對本次課需要完成的任務有一個直觀的了解,同時激發(fā)學生的學習興趣。在講解知識點時,可以先指出該知識點在案例中是如何使用的,找出相應的程序代碼,然后準確、詳細地闡述各個知識點。下面以第7個案例——查詢所有寵物主人信息——為例,簡單介紹案例教學的實施過程。
(1)教師為學生展示該案例的各項功能:寵物主人信息的查詢、寵物信息的修改;
(2)介紹該案例涉及的知識點:JDBC基本原理、Connection、Statement、ResultSet、PreparedStatement等接口的功能、定義、使用方法等;
(3) 詳細介紹各個知識點,由于JDBC基本原理較為抽象,不容易理解,可以在授課過程中先進行淡化;在介紹Connection接口后,從項目案例中抽取相關的代碼,在分析代碼的過程中加強了學生對Connection接口這個知識點的理解;
(4)在依次講授各個知識點后,再通過案例的演示,讓學生能從“看熱鬧到看門道”的轉變,最終掌握、靈活運用本次課所學的知識。
(5)進一步拓展案例的功能,舉一反三,布置學生課后需要完成的作業(yè)。
4 結束語
本文通過對Java程序設計課程的介紹,提出了教學過程中存在的諸多問題,在此基礎上引入了“案例教學法”,對該教學方法的意義、本質和實施過程進行了詳細的闡述。最后,以“查詢所有寵物主人信息”為例說明了該教學法的實施要點。筆者通過在授課課程中的使用,取得了良好的效果。
參考文獻:
[1] 趙寧.基于遞進式案例教學法的Java課程教學改革研究[J].計算機教育,2013,23:73-76.
[2] 胡竟偉,張靜.實例與案例教學法在“Java程序設計”課程中的應用[J].計算機教育,2014,23:95-96.
[3] 姚競.淺議《Java程序設計》課程中的案例設計[J].湖北經濟學校學報:自然科學版,2014,11(6):174-175.