潘瑞遠 唐麗瓊 韋小鳳
摘要:該文主要對高等職業(yè)技術(shù)學(xué)院Java程序設(shè)計課程教學(xué)改革的思路和方法的探討,設(shè)計了適用于高等職業(yè)技術(shù)學(xué)院Java程序設(shè)計課程的教學(xué)內(nèi)容、教學(xué)方法與手段、作業(yè)和考核方式等教學(xué)措施,目的為培養(yǎng)學(xué)生的動手能力、程序開發(fā)能力以及完成工程項目的能力。
關(guān)鍵詞:高職;Java;教學(xué)改革;教學(xué)方法
中圖分類號:G642 文獻標(biāo)識碼:A 文章編號:1009-3044(2016)13-0148-02
1 概述
當(dāng)今社會IT界競爭日益激烈,IT企業(yè)對軟件人才能力需求的加劇。而現(xiàn)在大多的高職院校的人才培養(yǎng)模式是以應(yīng)用型人才的培養(yǎng)為主要目標(biāo)的。所謂應(yīng)用型人才,就是把成熟的技術(shù)和理論應(yīng)用到實際的生產(chǎn)、生活中的技能型人才,即擁有很強的動手能力、理論聯(lián)系實際的能力以及解決實際問題的能力的人才。
Java語言本身所具備的面向?qū)ο?、與平臺無關(guān)、多線程、異常機制、安全穩(wěn)定等優(yōu)點,以及其基于J2EE的企業(yè)級應(yīng)用的大規(guī)模開發(fā)和基于J2ME的嵌入式應(yīng)用程序的開發(fā),使其已經(jīng)成為當(dāng)今企業(yè)的主流開發(fā)程序設(shè)計語言之一。學(xué)習(xí)和掌握J(rèn)ava語言無疑會帶來更多的機遇。因此,幾乎所有高校尤其是職業(yè)院校都競相開設(shè)了《Java程序設(shè)計》等相關(guān)課程。本文主要結(jié)合筆者幾年來的教學(xué)實踐經(jīng)驗,對職業(yè)學(xué)院Java程序設(shè)計課程的教學(xué)方法談幾點自己的看法。。
2 Java程序設(shè)計課程教學(xué)探討
2.1課程設(shè)計思想
Java程序設(shè)計基于標(biāo)準(zhǔn)Java語言平臺,主要培養(yǎng)學(xué)生具有Java語言的應(yīng)用系統(tǒng)項目開發(fā)能力。其前導(dǎo)課程是C語言程序設(shè)計和數(shù)據(jù)庫原理與應(yīng)用,C程序設(shè)計為本課程提供了程序設(shè)計的基本知識和基本編程思想;數(shù)據(jù)庫原理與應(yīng)用則為Java項目開發(fā)的前端數(shù)據(jù)處理提供了后臺數(shù)據(jù)存儲功能支持。而本課程不僅為后續(xù)課程——Java EE技術(shù)開發(fā)以及Android應(yīng)用程序開發(fā)等課程的學(xué)習(xí)打下基礎(chǔ),更重要的是培養(yǎng)了學(xué)生面向?qū)ο蟪绦蛟O(shè)計的基本理念。
而要上好這門課,首先需要思考這門課程要從哪些方面培養(yǎng)學(xué)生的編程能力,重點在哪里,然后在組織教學(xué)的時候才能有的放矢地培養(yǎng)學(xué)生,這樣教學(xué)效果才好。筆者認(rèn)為,本課程應(yīng)著重培養(yǎng)以下能力:
1) 培養(yǎng)學(xué)生良好的編程能力。學(xué)生應(yīng)該擁有獨立編寫代碼和排錯編的能力。
2)培養(yǎng)學(xué)生完成工程項目的能力。要求學(xué)生完成的程序是一個相對較大的設(shè)計項目,項目能夠涉及不同章節(jié)中所學(xué)知識的應(yīng)用,學(xué)生可以把各階段所學(xué)的內(nèi)容都聯(lián)系起來,達到綜合運用目的。同時,還要培養(yǎng)學(xué)生書寫各種程序文檔的能力,讓學(xué)生真正懂得如何撰寫各種程序文檔,程序文檔在整個項目中的重要作用,讓學(xué)生明白開發(fā)一個項目并不是只是僅僅編寫程序而已。
2.2課程內(nèi)容設(shè)計
本課程教學(xué)內(nèi)容的選取是按照課程設(shè)計開發(fā)思路,用循序漸進的手法和項目驅(qū)動的案例,由淺入深的講解Java的基礎(chǔ)部分和高級部分,包括以下內(nèi)容:
.Java語法基礎(chǔ)
.Java面向?qū)ο缶幊?/p>
.Java圖形界面
.Java文件讀寫流
.Java多線程
.Java網(wǎng)絡(luò)編程
.Java數(shù)據(jù)庫編程
本課程使用任務(wù)驅(qū)動案例串聯(lián)與補充拓展的方式組織教學(xué)內(nèi)容。
所謂串聯(lián),就是以一個小小的剪刀石頭布游戲來串起整個JAVA所涉及大部分知識內(nèi)容:
1)學(xué)完Java語法基礎(chǔ)和Java面向?qū)ο缶幊毯?,可以要求學(xué)生完成一個簡單的無界面的剪刀石頭布游戲;
2)學(xué)完Java圖形界面后,要求學(xué)生完成一個有界面的剪刀石頭布游戲;
3)學(xué)完Java文件讀寫流章節(jié)后,要求學(xué)生完成一個有界面的可將成績存在本地文件剪刀石頭布游戲;
4)學(xué)完Java網(wǎng)絡(luò)編程章節(jié)后,要求學(xué)生完成一個有界面的可遠程聯(lián)機玩的剪刀石頭布游戲,即一臺機子是客戶端,負(fù)責(zé)顯示數(shù)據(jù);一臺機子是服務(wù)器,負(fù)責(zé)判勝負(fù);
5)學(xué)完Java多線程章節(jié)后,要求學(xué)生完成一個有界面的可多人遠程聯(lián)機玩的剪刀石頭布游戲;
6)學(xué)完Java數(shù)據(jù)庫編程章節(jié)后,要求學(xué)生完成一個有界面的可多人遠程聯(lián)機玩的并且有英雄榜的剪刀石頭布游戲。即可以將自己最好成績上傳到服務(wù)器后臺數(shù)據(jù)庫,大家來查看排名。
所謂補充拓展,就是除了完成主線的剪刀石頭布游戲任務(wù)外,還要使用其他案例來補充每一章節(jié)的知識點。
1)在Java語法基礎(chǔ)Java面向?qū)ο缶幊陶鹿?jié),添加封裝、繼承、多態(tài)的相關(guān)基礎(chǔ)練習(xí)。
2)在Java圖形界面章節(jié),添加布局、對話框、萬年歷、掃雷游戲、華容道游戲等練習(xí)。
3)在Java文件讀寫流章節(jié),添加文件創(chuàng)建、復(fù)制、讀寫、加密解密的練習(xí)。
4)在Java網(wǎng)絡(luò)編程章節(jié),添加簡單版qq、獲取網(wǎng)絡(luò)服務(wù)器的天氣預(yù)報數(shù)據(jù)等練習(xí)。
5)在Java多線程章節(jié),添加線程的生命周期、線程的數(shù)據(jù)共享、線程聯(lián)合以及排隊買票問題的練習(xí)。
6)在Java數(shù)據(jù)庫編程章節(jié),添加簡單版的學(xué)生信息管理系統(tǒng)。實現(xiàn)管理員登錄,學(xué)生數(shù)據(jù)的增刪改查等功能。
2.3教學(xué)方法
本課程教學(xué)方法使用階段式和啟發(fā)式教學(xué)。
1)根據(jù)教材,選擇合適的Java語言開發(fā)平臺。
目前流行的開發(fā)平臺有JDK、和Eclipse等。JDK是適合于入門學(xué)習(xí),但不帶編輯器,需要與其它的編譯器連用,才能完成程序的運行。Eclipse是一個開放源代碼的、基于Java的可擴展開發(fā)平臺。在教學(xué)中我們采取了前期使用JDK加記事本的Java程序開發(fā)學(xué)習(xí)模式,到課程中期再學(xué)習(xí)使用Eclipse進行系統(tǒng)的工程化的程序開發(fā)。
2)課程教學(xué)前半階段涉及Java知識點較為簡單,學(xué)生只需按照老師講解提示和課件的操作步驟,自己完成簡單的代碼編程練習(xí)案例即可。
3)課程教學(xué)后半階段由于知識難度增加,完成一個較為復(fù)雜的編程練習(xí)案例需要編寫多行的代碼和花費大量的時間調(diào)試。此時教學(xué)方式轉(zhuǎn)化為代碼填空。教師先把自己編寫好的案例代碼進行注釋,然后刪除重要知識點語句。然后學(xué)生在理解課程內(nèi)容的基礎(chǔ)上,根據(jù)注釋提示,完成代碼的填空,并成功運行程序。
4)課程結(jié)課階段,為培養(yǎng)學(xué)生的團隊合作意識和項目開發(fā)能力,要求2-3位同學(xué)共同完成一個有一定工作量的JAVA應(yīng)用程序項目的開發(fā)。并根據(jù)軟件工程的思想,完成大作業(yè)實驗報告的填寫(實驗報告中含有若干個軟件工程文檔)。最后上交的形式必須不僅僅包括代碼,要有規(guī)范的文檔。這樣可以培養(yǎng)學(xué)生的文檔總結(jié)能力。
2.4教學(xué)手段
高職院校與其他院校相比,屬于職業(yè)教育,在知識學(xué)習(xí)方面,與本科院校學(xué)生有所不同,主要是培養(yǎng)學(xué)生的實際動手能力和自學(xué)能力。
因此,本門課程依據(jù)“因材施教”原則,主要采用如下幾種教學(xué)手段:
1)本課程使用理論教學(xué)與上機實踐相結(jié)合的授課方式,即“教實一體化”。課程內(nèi)容全部在計算機機房教授,使用教師端控屏進行Word和PPT課件講解知識點,并且現(xiàn)場使用編程軟件操作演示,增加學(xué)生的感性認(rèn)識。
2)緊密聯(lián)系實際。本課程各種編程實例的運用大量存在于工作、生活中,把計算機編程展開到實際應(yīng)用這一層次,這些可以提高學(xué)習(xí)興趣,激發(fā)學(xué)習(xí)熱情。
比如在學(xué)習(xí)Java可視化界面之前,可以先演示一個基于控制臺的石頭剪子布游戲,計算機隨機生成出拳,讓學(xué)生玩,之后可以自動判輸贏。這樣一來,學(xué)生便會急著想知道可視化界面怎么做出來,然后就教師可以接著講解相關(guān)例子。
3)現(xiàn)場檢查驗收作業(yè),當(dāng)場記分,保證學(xué)生到課率。傳統(tǒng)考勤只能保證學(xué)生到課堂,并不能保證學(xué)生能動手去編程和學(xué)習(xí),所以現(xiàn)場檢查驗收作業(yè)能在一定程度上改善此問題。
2.5考核方式
課程考核內(nèi)容分為:平時作業(yè)、結(jié)課大作業(yè)和學(xué)習(xí)態(tài)度三部分??偝煽?00分,其中平時作業(yè)48分,結(jié)課大作業(yè)40分,學(xué)習(xí)態(tài)度分12分。平時作業(yè)一共16個專題,按時完成記3分(本次課布置,下次課驗收),補交記2分,不交記0分;結(jié)課大作業(yè)包括作品質(zhì)量分20分和實驗報告分20分;學(xué)習(xí)態(tài)度分相對靈活,由教師根據(jù)學(xué)生的學(xué)習(xí)狀況自行把握。
3 總結(jié)
Java程序設(shè)計課程在高職院校的開設(shè)有著非常重要的意義,職業(yè)院校的Java課程教學(xué)一定要圍繞提高學(xué)生的職業(yè)技能而展開,注重面向?qū)ο缶幊趟枷氲呐囵B(yǎng),教學(xué)過程中要引入多媒體技術(shù)等先進教學(xué)手段, 筆者將Java教學(xué)的一些方法,應(yīng)用于Java教學(xué),取得了很好的教學(xué)效果。教學(xué)的關(guān)鍵在于因材施教,必須針對學(xué)生的具體情況具體分析,尋找出真正合適的教學(xué)方法,才能達到良好的教學(xué)效果。