鄧競偉 鄧凱英 賈麗娟
摘要:在新工科背景下,作者針對Java程序設計課程體系現(xiàn)狀,分析了Java程序設計課程在高校計算機專業(yè)人才培養(yǎng)中的重要性,并對該課程教學進行了研究與探討,提出設計Java程序設計課程的教學目標、教學體系以及教學改進方法,以期能夠提高學生的學習積極性和主觀能動性,從而達到較好的教學效果。
關鍵詞:新工科;教學改革;程序設計;項目式驅(qū)動教學法
中圖分類號:G717? 文獻標識碼:A? 論文編號:1674-2117(2021)22-0100-04
● 引言
近年來,隨著游戲軟件的開發(fā)、智能手機、大數(shù)據(jù)、人工智能等領域的飛速發(fā)展,編程語言作為基礎的技術支撐,備受人們的關注。另外,在新工科背景下,基于MOOC、翻轉(zhuǎn)課堂、SPOC的混合式教學模式改革實踐得到了很多教育人士的重視。
新工科人才培養(yǎng)最基本的問題是能力的培養(yǎng),即要注重培養(yǎng)學生的自主學習能力,因而高校學生計算機編程能力的培養(yǎng)是新工科人才培養(yǎng)的一項十分重要的工作。[1-3]筆者所在學校是一所民族高等院校,所在學院對學生的培養(yǎng)定位于使學生具有良好的職業(yè)道德和綜合素質(zhì)以及扎實的計算機相關理論知識,能夠運用所學知識和技術解決實際問題,具有創(chuàng)新、創(chuàng)業(yè)和團隊精神。學生畢業(yè)后能夠從事大型軟件項目的開發(fā)和適應社會需求變化對高素質(zhì)軟件工程專門人才的基本要求。
● 課程體系現(xiàn)狀分析
Java程序設計是面向?qū)ο蟪绦蛟O計方法,其作為計算機相關專業(yè)的實踐型和應用型較強的課程之一,在計算機相關專業(yè)課程建設中具有相當重要的地位。[4]因此,此Java程序設計是計算機軟件開發(fā)人員必須掌握的一門基本技術。[5-6]該課程講述Java程序設計的基本語法、面向?qū)ο蟮娜筇匦裕ǚ庋b性、繼承性和多態(tài)性)概論以及關于JDK(Java Development Kit)類庫的專題,如I/O流、圖形用戶界面、多線程程序設計和數(shù)據(jù)庫訪問的編程技術等。通過學習該課程,學生可以掌握Java程序開發(fā)工具JDK的配置及應用,理解Java中的數(shù)據(jù)類型、運算符和表達式的應用,掌握運用Java語言編寫具有面向?qū)ο筇匦缘拇a的能力,培養(yǎng)良好的編程、設計風格以及調(diào)試技巧,并具有用Java開發(fā)項目的能力。然而,Java程序設計課程的教學大多采用理論課堂先在教室授課,從最基本的概念和基礎知識(如數(shù)據(jù)類型、運算符、表達式)開始講解的方法。[7]因此,Java語言程序設計的教學改革顯得尤為重要。
● 課程教學模式
線上教學改變了傳統(tǒng)的備課模式、互動模式、教學形式以及心理態(tài)勢。學生能夠主動學習、師生高效互動是筆者多年追求的目標。
1.強化課堂互動
教師要根據(jù)專業(yè)特點和學生基礎等,充分利用網(wǎng)絡資源,優(yōu)選適宜內(nèi)容提供給學生,要求學生自主觀看視頻預習并提出問題,讓學生帶著問題去學習,還可以通過課堂教學與學生探索和交流;同時,學生之間也可以展開討論與交流,將學生由被動學習變?yōu)橹鲃訉W習,從而提高學生學習的自主能動性。[8]
2.實時查漏補缺
在傳統(tǒng)教學模式中,作業(yè)都是在課后完成的,講解作業(yè)最快也要在下一次課堂上進行,而線上教學則不同,尤其是客觀題,教師可以實時批改和統(tǒng)計作業(yè),這樣就可以第一時間掌握學生對知識的掌握情況,并能及時查漏補缺。
● 課程改革
Java程序設計實驗課要求學生在實驗前認真閱讀實驗指導書中的相關內(nèi)容,并明確實驗目的和實驗任務,在實驗前做好預習準備工作,即熟悉程序流程、調(diào)試方法、步驟以及對實驗結(jié)果的分析方法等。教師還要要求學生獨立完成實驗并做好實驗記錄,按照實驗報告的具體要求寫出完整的實驗報告。
1.注重理論聯(lián)系實際,突出實踐教學
Java語言程序設計是一門理論性和實踐性并重的課程,實驗是本課程重要的教學環(huán)節(jié),只有通過實驗才能加強學生的感性認識,進而使其掌握使用方法,運用所學的理論知識分析和處理問題。
本課程是筆者所在學院軟件工程專業(yè)的一門專業(yè)課程,共48學時,其中理論課有36學時,實驗課有12學時。教師在教學中要按照教學大綱的要求,采用理論和實踐相結(jié)合的方式調(diào)動學生學習的主動性和積極性,進而達到教與學的融合。理論與實驗教學的具體內(nèi)容如表1所示。
2.重視課程設計,引用項目式驅(qū)動教學法
結(jié)合當前企業(yè)需求和高校的人才培養(yǎng)目標,教師應重視課程設計,可采取項目式驅(qū)動教學模式。
(1)項目式驅(qū)動教學法
為了提升學生的動手能力和學習興趣,在實際教學過程中,教師可以引用項目式驅(qū)動教學法,把項目拆分成若干模塊,每個模塊包含幾個知識點,教師主要講解基本知識,并在學生完成項目過程中起到引導作用。
(2)選擇合適的項目
項目式驅(qū)動教學法首先要選擇難度適中、功能齊全的項目,并且此項目盡可能地涵蓋Java程序設計課程所學到的所有知識點。另外,需要注意的是,Java程序設計是基礎編程課程,此課程的先修課程是C語言程序設計,大部分學生的綜合編程能力不是很強,如果選擇太難的項目,學生做不出來會打消積極性。
(3)項目式驅(qū)動與小組合作法
為了提升學生解決實際問題的能力,筆者在傳統(tǒng)的課程安排基礎上增加了此課的課程設計,對學生進行分組,每組分配一個項目,每個組都設有組長和組員,組長負責分配任務,課程設計結(jié)束后,每位學生都參加答辯,介紹自己所做的內(nèi)容。這樣不僅能夠提高學生對此課程的學習興趣,而且鍛煉了學生解決實際問題的能力,同時也增強了學生的團隊精神。
3.加強校企合作,熟悉企業(yè)編程思想
為了培養(yǎng)高素質(zhì)軟件工程專門人才和推動培養(yǎng)學生的應用能力,高校必須加強與企業(yè)之間的合作。這樣一方面可以了解企業(yè)需要,熟悉企業(yè)編程思想,實時調(diào)整培養(yǎng)方案;另一方面可以避免出現(xiàn)知識的滯后性,及時修訂適合高校教學體系的教材,以此來配合Java程序設計課程教學改革,使其能夠順利完成。
4.鼓勵學生多參加項目開發(fā)大賽
要想提高學生的創(chuàng)新能力和實踐動手能力,僅憑課堂上學習的知識是遠遠不夠的,應多鼓勵和引導學生參加課外實踐或者大賽,這是一種很好的提高手段。學生通過參加競賽不僅可以提高動手能力,還能鍛煉團隊合作精神,增強自信心,并對后續(xù)課程內(nèi)容的學習有新的目標和方向,從而得到全面發(fā)展。
● 考核方式與教學效果反饋
在本課程的考核過程中,需要加強過程考核,筆者進行了如下設置:平時成績30%(考勤50%和作業(yè)50%)、實驗成績20%(包括實驗報告70%和實驗考試30%)以及期末考試50%。
本次考核內(nèi)容符合教學大綱要求的范圍和教材包括的知識范圍,考查了基本理論、基本知識和基本技能,考核的內(nèi)容難易程度適中,考核方式合理,并且能夠較好地反映學生對相關知識的掌握情況。課程成績分布如圖1所示。
除此之外,在正常教學任務完成以后,教師可以給學生布置綜合性難度適中的三個小項目,由學生參考上課講的案例來完成這些小項目,以大作業(yè)的方式提交并撰寫課程設計指導日志作為期末成績,最終成績由三部分(平時成績20%、項目成績40%、答辯成績40%)組成。同時,要求實驗目的、實驗設備、實驗過程敘述完整,言簡意賅,對實驗結(jié)果有具體分析,總結(jié)實驗收獲、遇到的問題和解決的辦法,實驗報告撰寫規(guī)范、整齊。課程設計成績比例分配如表2所示。
課程設計是對學過的所有面向?qū)ο蟮木幊趟枷胍约熬幊谭椒ǖ目偨Y(jié)、回顧和實踐,學生確定設計題目后,要明確本次課程設計所要用到的技術點,回顧之前學習的知識點,或者到網(wǎng)上搜索以及查閱相關的書籍來搜索資料。通過編寫一個基于Java的應用系統(tǒng)綜合實例來掌握Java語言編程技巧。教師可以根據(jù)學生提交的設計論文(包括程序主要完成的功能、設計思路和框圖、主要代碼,程序中有何創(chuàng)新、有何收獲和存在的不足以及需要改進的地方,程序功能的實現(xiàn)和平時的表現(xiàn))進行考核。課程設計成績分布如圖2所示。
圖1和圖2能夠較好地反映學生對相關知識得掌握情況,可以看出大部分學生掌握得不錯,個別學生還有待提高,總體達到了預期效果。
● 結(jié)論
本文通過分析Java程序設計課程體系現(xiàn)狀,提出了對Java程序設計課程進行改革的方式方法,改變了教學手段,并對理論教學和實驗教學的學時和內(nèi)容進行了調(diào)整,增加了課程設計,由此突出了項目任務驅(qū)動法應用于Java程序設計課程的實踐教學模式,提升了學生的編程和解決實際問題能力,取得了很好的教學效果,達到了提高教學質(zhì)量的目的,更重要的是,使學生的未來就業(yè)前景更加廣闊。
參考文獻:
[1]李金忠,黃雪梅,夏潔武.新工科背景下融合CDIO和翻轉(zhuǎn)課堂的Java程序設計課程教學改革[J].計算機教育,2019,17(11):58-63.
[2]于波,劉佳,張云晶,等.基于C語言課程的新工科人才編程能力培養(yǎng)支架式教學研究與實踐[J].吉林化工學院學報,2018,35(08):28-31.
[3]孫璐榮,王家寧,姜楠楠.面向“新工科”的Java程序設計課程項目驅(qū)動式教學模式改革研究[J].科技經(jīng)濟導刊,2019,27(17):199.
[4]李雷孝,王慧,邢紅梅,等.新工科建設背景下Java軟件開發(fā)技術類系列課程教學改革研究[J].智庫時代,2019,3(47):238-239.
[5]秦曉燕,鄭永愛.高職《Java程序設計語言》分層教學改革探索與實踐[J].電腦知識與技術,2018,14(19):148-149.
[6]程珍,池凱凱,李燕君,等.項目驅(qū)動和翻轉(zhuǎn)課堂相融合的教學模式在Java程序設計教學中的應用[J].計算機教育,2018(02):91-94.
[7]劉長旺.基于工程實踐能力培養(yǎng)的Java程序設計課程教學改革研究[J].教育教學論壇,2017(25):134-135.
[8]馬金霞.“翻轉(zhuǎn)課堂”教學法在C語言教學中的應用[J].信息與電腦,2019(20):250-251.
作者簡介:鄧競偉(1980—),女,博士,講師,研究領域為復雜網(wǎng)絡、教育教學方法研究。鄧凱英(1982—),女,博士,副教授,研究領域為軟件開發(fā)、計算機教學方法研究。賈麗娟(1979—),女,碩士,副教授,研究領域為軟件開發(fā)、計算機教學方法研究。
基金項目:教育部人文社科規(guī)劃基金項目(No.19YJAZH010),西北民族大學引進人才項目(No.xbmuyjrc201916,xbmuyjrc201632),西北民族大學一流本科課程(YLKC-106)和計算機文化基礎慕課項目。