馬曉梅,張劍飛,何 鳴,曲 芳
(黑龍江科技大學(xué) 計(jì)算機(jī)學(xué)院,黑龍江 哈爾濱150027)
開源項(xiàng)目下探討式教學(xué)法在Java課程中的應(yīng)用*
馬曉梅,張劍飛,何 鳴,曲 芳
(黑龍江科技大學(xué) 計(jì)算機(jī)學(xué)院,黑龍江 哈爾濱150027)
分析了以往Java課程教學(xué)存在的如下問(wèn)題:課程教學(xué)內(nèi)容以書本知識(shí)為主心軸;教學(xué)方法側(cè)重于知識(shí)的傳授;缺乏理論與實(shí)踐一體化的教學(xué)環(huán)境和工具.為提高教學(xué)質(zhì)量和效果,將探討式教學(xué)引入其中.從學(xué)生分組探討、逐層分解開源項(xiàng)目和鼓勵(lì)學(xué)生探討新知識(shí)三個(gè)方面,詳細(xì)介紹了在Java技術(shù)開源項(xiàng)目下探討式教學(xué)法的應(yīng)用.實(shí)踐表明,這種方法教學(xué)效果良好,有利于培養(yǎng)學(xué)生的綜合素質(zhì)能力.
Java課程;開源項(xiàng)目;探討式教學(xué)
Java語(yǔ)言程序設(shè)計(jì)課程是我校計(jì)算機(jī)學(xué)院軟件工程專業(yè)的一門重要的專業(yè)基礎(chǔ)必修課程.面向?qū)ο蠹夹g(shù)目前已成為計(jì)算機(jī)軟件開發(fā)領(lǐng)域的主流技術(shù),它綜合了程序設(shè)計(jì)、面向?qū)ο?、網(wǎng)絡(luò)、多媒體等的實(shí)際應(yīng)用,更增添了基于Internet的軟件開發(fā),已經(jīng)成為一門經(jīng)典實(shí)用的課程.Oracle公司推出的Java技術(shù)的開源社區(qū)是最活躍的社區(qū),這些社區(qū)產(chǎn)生了很多有價(jià)值的由底層開發(fā)人員提供的開源項(xiàng)目,像企業(yè)開發(fā)項(xiàng)目流行的Apathe Tomcat Server、ant、Eclipse、Struts等,結(jié)合開源項(xiàng)目應(yīng)用于Java課程可以使學(xué)生達(dá)到熟練地運(yùn)用Java語(yǔ)言面向?qū)ο蟮乃枷腴_發(fā)企業(yè)真實(shí)的軟件項(xiàng)目,更好的結(jié)合CDIO大綱對(duì)創(chuàng)新型人才的需求,培養(yǎng)具有獨(dú)立分析解決問(wèn)題能力、團(tuán)隊(duì)協(xié)作能力、創(chuàng)新能力的綜合素質(zhì)和高水平的軟件設(shè)計(jì)人才.
Java課程的教學(xué)目標(biāo)是讓學(xué)生掌握面向?qū)ο蟮木幊趟枷隱1],并能夠獨(dú)立完成項(xiàng)目的開發(fā).但從以往的教學(xué)情況看,無(wú)論是對(duì)于面向?qū)ο笏枷氲恼莆者€是動(dòng)手編程能力的培養(yǎng)都并不如人意,分析原因主要如下.
首先,課程教學(xué)內(nèi)容以書本知識(shí)為主心軸.以往的教學(xué)過(guò)程一直以知識(shí)講解作為教學(xué)內(nèi)容的核心,一味按照教材的先后順序授課,學(xué)生是為了學(xué)習(xí)而學(xué)習(xí),而不是因?yàn)榕d趣而學(xué)習(xí),且教學(xué)內(nèi)容與操作時(shí)間分配不當(dāng),學(xué)與練不能有機(jī)融合,導(dǎo)致教學(xué)效果不理想,同時(shí),學(xué)生也很難做到課上內(nèi)容充分消化吸收.
其次,教學(xué)方法存在問(wèn)題.常規(guī)的教學(xué)方法主要側(cè)重于知識(shí)的傳授,偏重于講解具體的面向?qū)ο?、類與對(duì)象等條條框框的理論知識(shí),不能通過(guò)有效充分利用多媒體設(shè)備、網(wǎng)絡(luò)視頻等手段實(shí)現(xiàn)動(dòng)畫、圖片、音頻的播放來(lái)啟發(fā)學(xué)生的積極性,激發(fā)學(xué)生的主觀能動(dòng)性,造成學(xué)生只會(huì)接受,比較被動(dòng),不會(huì)思考,只知其然而不知其所以然.因此,這種教學(xué)方法忽視了學(xué)生的解決問(wèn)題能力、分析問(wèn)題能力、創(chuàng)新能力和操作能力等綜合素質(zhì)能力的培養(yǎng).
再次,缺乏理論與實(shí)踐一體化的教學(xué)環(huán)境和工具.Java課程作為計(jì)算機(jī)軟件專業(yè)編程類課程[2],能更好地實(shí)現(xiàn)以就業(yè)為導(dǎo)向的教學(xué)目標(biāo)要求必須具備的一定的動(dòng)手編程能力,但因不具備理論與實(shí)踐一體化的教學(xué)環(huán)境和工具,使得理論課程與實(shí)踐課程不能很好地銜接,這就導(dǎo)致了學(xué)生無(wú)法真正地實(shí)現(xiàn)學(xué)以致用.
因此,要達(dá)到預(yù)期的教學(xué)目標(biāo)和要求,優(yōu)化課程教學(xué)質(zhì)量和效果,提高學(xué)生的綜合應(yīng)用能力,就應(yīng)改進(jìn)教學(xué)方法、教學(xué)內(nèi)容、教學(xué)平臺(tái)和環(huán)境,其中,開源項(xiàng)目下探討式教學(xué)方法的應(yīng)用在實(shí)際教學(xué)過(guò)程中取得了較好的成效.
Java技術(shù)的開源社區(qū)產(chǎn)生了許多有價(jià)值的開源項(xiàng)目,并且培養(yǎng)了一大批優(yōu)秀的大師級(jí)編程專家.通過(guò)開源項(xiàng)目的開發(fā)有利于學(xué)生動(dòng)手能力和團(tuán)隊(duì)合作精神的培養(yǎng)[3].開源項(xiàng)目采用“合作開發(fā)”、“共同創(chuàng)新”和“技術(shù)分享”的模式,通過(guò)來(lái)自優(yōu)秀編程者的自下而上創(chuàng)新體系進(jìn)行應(yīng)用軟件的開發(fā).
探討式教學(xué)方法的核心是問(wèn)題,學(xué)習(xí)活動(dòng)是圍繞問(wèn)題來(lái)展開的.探討式教學(xué)方法的出發(fā)點(diǎn)是設(shè)定待解答的問(wèn)題,它是下一步探討的起點(diǎn),而開源項(xiàng)目是由底層核心開發(fā)人員已經(jīng)開發(fā)好的,具備良好的運(yùn)行界面和效果,通過(guò)對(duì)整體項(xiàng)目進(jìn)行逐層分解可提出問(wèn)題,在開源項(xiàng)目下采用探討式教學(xué)可以讓學(xué)生針對(duì)于實(shí)際解決問(wèn)題出發(fā),極大程度地提高學(xué)生的主觀能動(dòng)性.
2.1探討式教學(xué)的原理
探討式教學(xué)應(yīng)充分開放課堂,發(fā)掘?qū)W生自主探討問(wèn)題的潛能.它是教學(xué)過(guò)程的第一步,首先應(yīng)結(jié)合并選擇合適的開源項(xiàng)目,以此展開,逐層次地提出問(wèn)題,并幫助學(xué)生擬定合理的計(jì)劃,進(jìn)而選擇適合的方法.同時(shí),要求教師應(yīng)提供一定的實(shí)驗(yàn)工具或資料,由學(xué)生自己親自動(dòng)手操作,來(lái)尋找探討問(wèn)題的答案.教師主要充當(dāng)一個(gè)組織者的角色,指導(dǎo)學(xué)生的整個(gè)探討過(guò)程.該過(guò)程可以由一個(gè)學(xué)生獨(dú)立完成,也可由教師將學(xué)生根據(jù)學(xué)習(xí)興趣愛好程度分組來(lái)完成.同時(shí),應(yīng)注意培養(yǎng)學(xué)生團(tuán)隊(duì)合作精神.通過(guò)一系列的探討過(guò)程,應(yīng)讓學(xué)生在不斷的學(xué)習(xí)過(guò)程中學(xué)會(huì)總結(jié),要把自己解決問(wèn)題的過(guò)程或查閱的相關(guān)資料進(jìn)行總結(jié)梳理,歸納自己的結(jié)論.不同的學(xué)生或團(tuán)隊(duì)小組可以針對(duì)同一問(wèn)題提出不同的編程思路.教師組織大家共同研究探討,找出解決問(wèn)題的最佳方法.
2.2結(jié)合開源項(xiàng)目應(yīng)用探討式教學(xué)
2013年以來(lái),針對(duì)軟件工程專業(yè)學(xué)生,實(shí)施了探討式教學(xué),主要有以下幾個(gè)方面.
1)學(xué)生分組探討
在教學(xué)過(guò)程中,讓學(xué)生以小組團(tuán)隊(duì)形式來(lái)分析、探討并完成應(yīng)用項(xiàng)目的開發(fā),每個(gè)小組5~6人,并通過(guò)測(cè)試考核制定小組負(fù)責(zé)人.每個(gè)小組的組員都由好、中、差三部分學(xué)生組成,這樣可以互相帶動(dòng),互助學(xué)習(xí),學(xué)習(xí)過(guò)程以開發(fā)小組為單位,在教師的指導(dǎo)和監(jiān)控下,相互分工協(xié)作,共同完成一個(gè)小項(xiàng)目的開發(fā).
2)逐層分解開源項(xiàng)目
實(shí)施過(guò)程中,學(xué)生先從ICBC開源項(xiàng)目入手,將該項(xiàng)目分解為三塊內(nèi)容:頁(yè)面設(shè)計(jì)、腳本代碼、數(shù)據(jù)庫(kù)連接.每一部分內(nèi)容都與Java相關(guān)基礎(chǔ)鏈接,引出小節(jié)課程學(xué)習(xí)內(nèi)容,通過(guò)小組探討發(fā)覺(jué)、分析并共同解決問(wèn)題,每組成員還提出了一個(gè)擴(kuò)展方案.通過(guò)頁(yè)面設(shè)計(jì),學(xué)生掌握類與對(duì)象內(nèi)容基礎(chǔ),并結(jié)合學(xué)生已有的HTML靜態(tài)網(wǎng)頁(yè)制作,完成實(shí)現(xiàn)ICBC中國(guó)工商銀行的首頁(yè)面的設(shè)計(jì),每個(gè)小組的成員根據(jù)自己的興趣愛好,增加應(yīng)用PHP實(shí)現(xiàn)美工設(shè)計(jì),以四周為一個(gè)考核周期,測(cè)試學(xué)生對(duì)于知識(shí)的掌握程度和應(yīng)用程度,從實(shí)際考核結(jié)果看,green小組和happy小組在第一階段分別獲取一班和二班第一名,分別獎(jiǎng)勵(lì)兩個(gè)小組成員一個(gè)足球,以資鼓勵(lì),學(xué)生主觀能動(dòng)性大大提高,同時(shí),也帶動(dòng)了學(xué)習(xí)成績(jī)較差的同學(xué)共同進(jìn)步,學(xué)生在后期學(xué)習(xí)過(guò)程中都勁頭十足,積極、努力并真正地發(fā)自內(nèi)心地喜歡上這門課程.以軟件項(xiàng)目開發(fā)帶動(dòng)Java課程學(xué)習(xí)的教學(xué)模式,使學(xué)生進(jìn)一步掌握應(yīng)用Java語(yǔ)言編程的方法和技術(shù).
3)鼓勵(lì)學(xué)生探討新知
在教學(xué)過(guò)程中還鼓勵(lì)學(xué)生探究新知并提出問(wèn)題.改進(jìn)課上教學(xué)模式,針對(duì)于用Java語(yǔ)言連接MySql數(shù)據(jù)庫(kù)涉及到的JDBC技術(shù),通過(guò)對(duì)ICBC中國(guó)工商銀行逐層分解的第三部分即數(shù)據(jù)庫(kù)連接,向person數(shù)據(jù)庫(kù)中錄入用戶名和密碼,包括數(shù)據(jù):用戶名admin,密碼123456;用戶名Boyuping,密碼199067等等,在console控制臺(tái)中學(xué)生分別討論并驗(yàn)證連接結(jié)果.
在講授新知識(shí)繼承內(nèi)容時(shí)引入新的開源項(xiàng)目——植物大戰(zhàn)僵尸游戲,通過(guò)游戲的引入,調(diào)動(dòng)了學(xué)生的積極性,先分解抽象出每個(gè)僵尸,并結(jié)合不同圖片說(shuō)明,通過(guò)已有的僵尸,再增加新的能量即在類中定義新的方法,定義冰凍僵尸類繼承原有的僵尸類,從而引出了繼承的應(yīng)用.應(yīng)用時(shí)學(xué)生隨時(shí)發(fā)問(wèn),如有同學(xué)提出問(wèn)題:僵尸的衣服和顏色怎么定義?以此問(wèn)題展開,課堂討論氣氛較激烈.
教與學(xué)真正地融為了一體,學(xué)生成為課堂的主體,不再是老師一人唱主角.同時(shí),經(jīng)常鼓勵(lì)學(xué)生自學(xué),遇到問(wèn)題及時(shí)溝通解決,在講述GUI基礎(chǔ)內(nèi)容時(shí),兩個(gè)小組在做猜數(shù)字游戲時(shí)出現(xiàn)了空指針錯(cuò)誤,由于課上時(shí)間有限沒(méi)有及時(shí)解決,課后通過(guò)QQ交流群和Java課程網(wǎng)絡(luò)教學(xué)平臺(tái)適時(shí)地幫學(xué)生解決了問(wèn)題.針對(duì)多線程等難點(diǎn)內(nèi)容,給學(xué)生提供了文檔、軟件工具、參考相關(guān)資料,并提醒學(xué)生充分利用百度搜索和教學(xué)視頻等手段,指導(dǎo)學(xué)生完成了單元課程綜合能力訓(xùn)練,學(xué)生對(duì)自已應(yīng)掌握的知識(shí)點(diǎn)及通過(guò)學(xué)習(xí)應(yīng)具備的各專項(xiàng)能力有一個(gè)清晰的認(rèn)識(shí),學(xué)習(xí)目的明確.
在探討式教學(xué)課堂上,各個(gè)小組的學(xué)生充分交流探討每一個(gè)階段的學(xué)習(xí)成果.在IO流內(nèi)容結(jié)束后,有的小組分別探討了針對(duì)存儲(chǔ)銀行用戶信息采用IO流與數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)的區(qū)別,并分別驗(yàn)證編寫代碼實(shí)現(xiàn)了操作.在互相交流中,大家思維相互碰撞,撞擊出了創(chuàng)造思維的火花.探討式教學(xué)激發(fā)學(xué)生實(shí)踐的創(chuàng)造性,開拓思路,設(shè)計(jì)新算法,培養(yǎng)創(chuàng)造性的設(shè)計(jì)能力,同時(shí)鼓勵(lì)學(xué)生自主開展實(shí)驗(yàn)設(shè)計(jì).如有的同學(xué)比較喜歡用JSP和Java編寫前臺(tái)頁(yè)面,提供開發(fā)工具Tomcat,并確定實(shí)驗(yàn)方法,進(jìn)行創(chuàng)新性實(shí)驗(yàn).通過(guò)激發(fā)學(xué)生參加開發(fā)實(shí)踐的積極性與創(chuàng)造性,才能達(dá)到綜合應(yīng)用所學(xué)知識(shí)的目的.探討式教學(xué)下,學(xué)生發(fā)散、變通思維能力和創(chuàng)新意識(shí)增強(qiáng),自主、探討興趣提高.通過(guò)開源項(xiàng)目開發(fā)的實(shí)踐訓(xùn)練,提高了學(xué)生軟件開發(fā)的實(shí)際能力,培養(yǎng)了學(xué)生創(chuàng)造性的設(shè)計(jì)能力.
通過(guò)一個(gè)學(xué)期在開源項(xiàng)目下采用探討式教學(xué)方法的Java課程教學(xué)改革,Java語(yǔ)言程序設(shè)計(jì)課程取得了良好的教學(xué)效果,這種授課方式的優(yōu)勢(shì)是通過(guò)對(duì)開源項(xiàng)目逐層分解引出小組成員待分析解決的問(wèn)題,激發(fā)了學(xué)生的主觀能動(dòng)性,也滿足了企業(yè)對(duì)創(chuàng)新型工程人才的需求,同時(shí)也更好地實(shí)現(xiàn)了以就業(yè)為導(dǎo)向的教學(xué)目標(biāo).在實(shí)踐過(guò)程中,學(xué)生的熱情出乎意料,學(xué)生提出的思想、方法、獨(dú)特的意見超出了想象.學(xué)生普遍反映開源項(xiàng)目下探討式教學(xué)的收獲是真實(shí)的,是真正意義上實(shí)現(xiàn)了素質(zhì)教育. 但是改革的過(guò)程,是一個(gè)長(zhǎng)期的、綜合性的工作,還需要進(jìn)一步的探索與研究.
[1]徐延寧.案例教學(xué)理論基礎(chǔ)探析[J].學(xué)位與研究生教育,2012,(1):14-16.
[2]劉琦.案例導(dǎo)學(xué)與任務(wù)督學(xué)相結(jié)合的程序設(shè)計(jì)課程教學(xué)模式探討[J].電氣電子教學(xué)學(xué)報(bào),2010,(4):108-111.
[3]潘武玲.改進(jìn)我國(guó)研究教育質(zhì)量評(píng)價(jià)指標(biāo)體系之思考[J].高等教育研究學(xué)報(bào),2011,(3):52-55.
TheApplicationaboutDiscussionTeachingMethodinJavaCoursebasedOpenSourceProject
MA Xiao-mei, ZHANG Jian-fei, HE Ming, QU Fang
(College of Computer, Heilongjiang Institute of Science and Technology, Haerbin Heilongjiang 150027,China)
It analysis as follows problems about Java course in the teaching ways: the teaching content for course is to by way of book knowledge as axes; the teaching method is to impart knowledge mainly; there is a lack of teaching setting and facility about incorporating between theory and practice. In order to improve teaching quality and effect, this paper introduces discussion teaching method. From three methods of grouping discussion for students, breaking up stepwise for open source project and encouraging to discussing newly knowledge for students, this paper detailedly introduces the application of discussion teaching method based open source project of Java technology. The practice shows that the method for teaching effect is all right, and is propitious to bring up synthetical diathesis and ability for the students.
Java course; open source project; discussion teaching method
1673-2103(2013)05-0103-03
2013-09-28
黑龍江科技學(xué)院教學(xué)研究項(xiàng)目(JY12-102);國(guó)家自然科學(xué)基金項(xiàng)目資助(60671049;61172168)
馬曉梅(1981-),女,黑龍江省哈爾濱市人,講師,碩士,研究方向:自動(dòng)推理與機(jī)器學(xué)習(xí)等.
G642
A