摘 要:JAVA程序設計課程是軟件工程方向的重要基礎課程,針對該課程的傳統教學方法以理論應試為目的,難以適應培養實際應用技能人才的迫切需要。本文設計了一種貫穿了JAVA程序設計課程教學知識點的實際案例,并結合該案例,設計了一種JAVA程序設計課程的教學方法,探索了理論教學內容和實驗教學內容的創新手段,探討了課程考核方法的創新模式。該教學方法可以提高JAVA程序設計課程教學的實效性,對于提升學生的實踐能力具有實際的應用價值。
關鍵詞:JAVA程序設計課程;實際案例;教學內容;考核方法
中圖分類號:TP311.10-4
1 教學目標
本文旨在將實際的JAVA程序案例貫穿于整個JAVA程序設計課程的教學中[1],改變枯燥知識點的灌輸式教學方法,實踐和探索將實際案例運用于各個知識點的教學和學生實驗中,培養學生的學習興趣,提高學生的實際動手能力和編程能力,讓學生在課程教學中熟悉軟件企業的開發模式和習慣,并逐漸適應卓越工程應用人才的培養模式。
2 教學內容探索
在現行的教學中,JAVA教學按照教材列出的章節,逐個知識點進行講解,并按照教材提供的例子,對每個知識點進行說明。但是,教材提供的例子往往與企業的應用開發脫節,缺乏實用性,學生學習起來也枯燥無味,影響了其對知識的接受能力。因此,整個JAVA課程的教學內容應結合實際案例,并將該案例拆分成若干個部分,每個部分都可以單獨用于講解和訓練JAVA課程一個或若干關鍵知識點,讓學生能活學活用,直接將知識點用于編程實現實際案例的一個部分。下面從理論教學內容和實驗教學內容兩個方面介紹教學內容的探索方法。
2.1 理論教學內容
針對JAVA課程的各個知識點,設計實際案例“學生宿舍管理系統”,該系統具有相對齊全的系統功能,它基于字符界面模式,其主界面如圖1所示。
圖1 實際案例系統界面
“學生宿舍管理系統”接收用戶輸入的數字指令,并根據指令執行相應的功能,執行完畢后,再返回圖1所示的系統主界面,可以讓用戶反復執行相應功能,當輸入“退出”指令時,系統才退出。
“學生宿舍管理系統”的各個功能模塊相對獨立,它們可以共享相同的數據信息,每個模塊都可以單獨編程實現,這樣方便在課程教學中進行單獨講解。在整個JAVA課程的教學中,逐個將各知識點安排進“學生宿舍管理系統”的實現中,由易入難,當所有知識點講解完畢時,整個系統就按照以上功能完成。同時,為了更好地將“學生宿舍管理系統”的代碼設計分解到整個課程的教學中,再按照該系統的功能模塊和實現過程進行課程知識點的部署,JAVA課程的各個知識點在“學生宿舍管理系統”實現中的安排如下:
(1)設計和編程實現系統界面?!皩W生宿舍管理系統”的界面如圖1所示,該界面由“System.out.println();”語句逐行輸出。將Java程序的代碼編輯、編譯、運行、調試、輸出語句等知識點插入該實現過程的教學中,可以讓學生熟練掌握批量輸出語句的組合使用方法,學生在完成編程實現后,既掌握了Java編程的初步知識,又實現了“學生宿舍管理系統”的字符模式主界面。
(2)編程實現處理用戶指令。用戶可以在閃動的光標處輸入數字指令,系統根據輸入的用戶指令執行相應的功能。將數據類型、運算、判斷語句等知識點插入該實現過程的教學中,在已經實現的系統界面上,對輸入的指令進行計算,并判斷該執行何種操作。
(3)編程實現系統界面的重復顯示。在“學生宿舍管理系統”中,當系統執行完一個功能后,再返回到系統界面中,這樣可以讓本系統一直運行下去。將循環語句、循環嵌套、結構化編程等知識點插入該實現過程的教學中,教授學生如何實現程序的反復循環,并結合用戶指令,實現本系統指令對應的操作。
(4)編程實現學生類和房間類。該實現過程為“學生宿舍管理系統”提供數據基礎,為各個功能模塊建立學生和房間的結構化數據。將類的定義、類的創建、類的初始化、類的封裝、類的繼承等知識點插入該實現過程中,以實例化的形式教授學生學會面向對象編程。
(5)編程實現處理用戶的錯誤指令。該實現過程讓“學生宿舍管理系統”可以處理用戶的誤操作,避免因用戶輸入的錯誤指令導致系統失效。將異常處理知識點插入該實現過程,教授學生如何在實際應用中處理異常。
2.2 實驗教學內容
在實驗教學中,結合實際開發工具,按照理論教學的順序由淺入深,逐步實現“學生宿舍管理系統”,具體實驗教學如下:
(1)教授學生熟練使用一種Java編程的開發工具,例如Eclipse、NetBeans等,讓學生在學會熟練使用開發工具的同時,逐漸適應項目化的軟件開發模式。
(2)每次理論課程后配套相應的實驗課程,每位同學一臺計算機,編程實現一個獨立的子系統。
(3)當所有知識點講解結束時,由學生自己將本學期開發的所有子系統進行集成,組成一個完整的“學生宿舍管理系統”,并測試該系統的有效性。
(4)在學期末,部署課程設計,將學生進行分組,要求每個小組采用圖形化模式對“學生宿舍管理系統”重新進行設計,并要求小組成員進行合理的分工,共同完成程序設計、測試和文檔撰寫等工作。
3 考核方法實踐
JAVA程序設計課程的傳統考核方法采用期末集中筆試的方法,由于該課程要求學生掌握實際的編程能力,因此傳統的考核方法難以對學生掌握知識的程度進行科學的考核。本文改變期末考試決定絕大部分課程成績的原有考核模式,探索能考核出學生學習的真實效果的考核模式,側重考查學生利用所學知識進行實際應用開發的能力,課程成績由平時實驗成績、綜合案例成績、課程設計成績、期末考試成績組成,具體考核方法如下:
(1)平時實驗考核。該部分成績占課程成績的30%,主要考核學生利用所學知識點實現各實際子功能模塊的能力。
(2)綜合案例考核。該部分成績占課程成績的15%,主要考核學生將各子功能模塊集成為綜合案例的能力。
(3)課程設計考核。該部分成績占課程成績的15%,課程設計要求學生分組進行項目設計和編程,組內成員考核成績相同,主要考核學生的實際應用能力和團隊協作能力。
(4)期末考核。該部分成績占課程成績的40%,要求學生在指定時間、指定地點集中進行小項目設計和編程實現,主要考核學生的綜合應用能力和實踐動手能力。
參考文獻:
[1]鄧澤林,謝中科,胡寧靜.以企業需求為導向的Java程序設計教學改革探討[J].中國電力教育,2010(179):114-116.
作者簡介:劉才銘,男,副研究員,研究方向:網絡安全;張雁,女,講師,研究方向:網絡安全。
作者單位:樂山師范學院 計算機科學學院,四川樂山 614000
基金項目:樂山師范學院教育教學改革研究項目資助(項目編號:JG13-ZF22)。