梁妍 馬馳
摘要:Java程序設(shè)計是計算機(jī)專業(yè)的基礎(chǔ)核心課程。為了提高學(xué)生的編程技能和解決復(fù)雜工程問題的能力,提出并實施了一種融合微積分案例的混合教學(xué)模式,改革了教學(xué)過程、教學(xué)資源和考核方式,使得Java教學(xué)內(nèi)容設(shè)計上包含多因素、多技術(shù),幫助學(xué)生建立數(shù)學(xué)與計算機(jī)之間的聯(lián)系,培養(yǎng)學(xué)生解決復(fù)雜工程問題的能力。通過問卷調(diào)查和教學(xué)評價,發(fā)現(xiàn)該模式能夠有效地提升學(xué)生的學(xué)習(xí)效果和滿意度。
關(guān)鍵詞:教學(xué)改革;混合教學(xué)模式;Java程序設(shè)計;微積分
中圖分類號:G642? ? ? 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2024)09-0136-03
開放科學(xué)(資源服務(wù))標(biāo)識碼(OSID)
0 引言
隨著計算機(jī)技術(shù)的快速發(fā)展和廣泛應(yīng)用,計算機(jī)專業(yè)教學(xué)面臨著新的挑戰(zhàn)和機(jī)遇。如何培養(yǎng)具有創(chuàng)新能力和工程實踐能力的高素質(zhì)計算機(jī)人才,是計算機(jī)專業(yè)教學(xué)的重要目標(biāo)和任務(wù)。Java編程語言作為一種優(yōu)秀的編程語言,具有簡單易學(xué)、面向?qū)ο蟆⑵脚_無關(guān)、多線程、安全等特點和優(yōu)勢,在軟件開發(fā)領(lǐng)域有著廣泛的應(yīng)用和需求[1]。Java程序設(shè)計作為計算機(jī)相關(guān)專業(yè)教學(xué)的基礎(chǔ)課程之一,對于培養(yǎng)學(xué)生的編程思維、邏輯分析、問題解決等能力有著重要的作用和地位。微積分作為高等數(shù)學(xué)的重要組成部分,是計算機(jī)專業(yè)教學(xué)的另一個基礎(chǔ)課程。微積分不僅是計算機(jī)科學(xué)理論的數(shù)學(xué)基礎(chǔ),也是計算機(jī)工程實踐中不可或缺的工具。在本科工程認(rèn)證的12條畢業(yè)要求中,首要的要求就是能夠基于數(shù)學(xué)等多學(xué)科知識解決復(fù)雜工程問題,微積分在計算機(jī)專業(yè)教學(xué)中的作用和地位不容忽視[2]。
在Java程序設(shè)計教學(xué)和微積分教學(xué)中,都存在著一些問題和困難。例如,作為計算機(jī)專業(yè)的基礎(chǔ)課程,關(guān)系數(shù)據(jù)庫設(shè)計、Web界面設(shè)計等專業(yè)課程尚未開始授課,學(xué)生缺乏綜合開發(fā)能力,難以展開實際應(yīng)用場景下的案例教學(xué)設(shè)計;在微積分教學(xué)中,與計算機(jī)工程具體情況的情境化程度較弱,以及教學(xué)和實際應(yīng)用之間時間跨度太長,導(dǎo)致學(xué)生缺乏興趣和動力,難以理解和掌握微積分的概念和方法。
線上線下混合教學(xué)模式的出現(xiàn),使得線下班級授課制群體學(xué)習(xí)優(yōu)勢與網(wǎng)絡(luò)學(xué)習(xí)個性化融為一體,教學(xué)不再受制于課程學(xué)時,可以合理地分配時間和資源[3]。本文設(shè)計了一種融合微積分案例設(shè)計的Java程序教學(xué)模式,在Java程序設(shè)計教學(xué)中設(shè)計了若干微積分案例,從教學(xué)設(shè)計,教學(xué)過程和考核方法進(jìn)行了混合教學(xué)改革,以實現(xiàn)以下目標(biāo):1) 提高Java程序設(shè)計教學(xué)的實踐性和趣味性,激發(fā)學(xué)生的編程興趣和創(chuàng)造力;2) 融合微積分知識點,增強(qiáng)微積分教學(xué)的情境性和應(yīng)用性,幫助學(xué)生建立數(shù)學(xué)與計算機(jī)之間的聯(lián)系;3) 符合工程認(rèn)證中教學(xué)內(nèi)容設(shè)計上包含多因素、多技術(shù),通過形式化處理用抽象模型標(biāo)識問題的指導(dǎo)思想,培養(yǎng)學(xué)生解決復(fù)雜工程問題的能力。
1 Java程序設(shè)計教學(xué)中存在的問題
為了提供更多的功能、修復(fù)錯誤、增強(qiáng)安全性和改善性能,Java語言每半年更新一次版本,截至2023年3月份,Java的最新版本為JDK 20[4]。相對Java語言快速的更新速度,高校目前在Java教學(xué)過程中所教授的內(nèi)容已經(jīng)不能滿足社會發(fā)展的需求[5]。從教學(xué)目標(biāo)、教學(xué)模式、考核方式三個方面分析,主要有下列問題:
1) 教學(xué)目標(biāo)不明確。傳統(tǒng)教學(xué)模式中,教師需要依據(jù)大綱和教材教授Java的理論知識,實驗項目是對課后的例題的驗證,不會涉及實際項目實踐。師注重傳授語法知識和基本技能,忽視了培養(yǎng)學(xué)生的創(chuàng)新思維和解決問題的能力[6]。
2) 教學(xué)模式單一。傳統(tǒng)的講授式教學(xué)方法,注重課堂中的學(xué)習(xí),忽視課前預(yù)測和課后總結(jié)的重要性。缺乏互動和反饋導(dǎo)致學(xué)生缺乏主動性和興趣,很難讓學(xué)生對知識有深入的理解和掌握[5]。
3) 考核方式不夠完善。課程考核依賴期末的筆試成績,忽視了Java編程的實踐和應(yīng)用,導(dǎo)致學(xué)生死記書本上的知識,不能靈活地運用Java語言解決問題,與課程培養(yǎng)高素質(zhì)計算機(jī)人才的目標(biāo)相悖[6]。
2 Java程序設(shè)計教學(xué)設(shè)計
2.1 教學(xué)框架
混合教學(xué)是指將線上和線下教學(xué)相結(jié)合的一種教學(xué)模式。它充分利用網(wǎng)絡(luò)資源,實現(xiàn)個性化和差異化的教學(xué),同時保留了面授教學(xué)中師生互動、實踐操作等優(yōu)勢?;旌辖虒W(xué)框架在國內(nèi)外已經(jīng)得到了廣泛的應(yīng)用和研究[7-10],取得了良好的效果。
Java程序設(shè)計的混合教學(xué)框架包含兩部分內(nèi)容,線下教學(xué)模式(即傳統(tǒng)的課堂教授的模式),主要目標(biāo)是為了讓學(xué)生理解和掌握的基礎(chǔ)知識和驗證案例程序;線上教學(xué)模式,主要目標(biāo)是為了提高學(xué)生的解決問題和自主創(chuàng)新的能力,教師通過將課程的重點知識以視頻形式上傳到教學(xué)平臺上用于學(xué)生課前預(yù)習(xí)和課后復(fù)習(xí),并根據(jù)知識點設(shè)置相應(yīng)的問題用于檢測學(xué)習(xí)效果,通過學(xué)習(xí)通等教學(xué)平臺進(jìn)行教師與學(xué)生之間的交流。Java程序設(shè)計實踐教學(xué)框架如圖1所示。
2.2 教學(xué)過程設(shè)計
Java程序設(shè)計混合教學(xué)過程中,采用了“在線”+“離線”教學(xué)的方式,充分利用了網(wǎng)絡(luò)教學(xué)和傳統(tǒng)教學(xué)的優(yōu)勢。整個教學(xué)過程包括以下幾個步驟:
1) 在線預(yù)習(xí)。課前教師通過學(xué)習(xí)通等線上教學(xué)平臺,提供章節(jié)相關(guān)資料(例如,第一章節(jié)Java語言的歷史與特點),并設(shè)置問題(例如,如何理解Java程序語言面向?qū)ο?、健壯性)檢測學(xué)生的預(yù)習(xí)情況。學(xué)生通過預(yù)習(xí)資料,了解課程內(nèi)容的基本概念和要點,并通過教學(xué)平臺將預(yù)習(xí)過程中遇到的問題反饋給教師。
2) 線下講解。課堂上,老師首先參考課本知識和教學(xué)大綱,講解相關(guān)的知識點。然后教師根據(jù)反饋的問題,結(jié)合講解內(nèi)容為學(xué)生解答疑惑。最后通過組織小組討論、提問和搶答等方式,對所講知識進(jìn)行進(jìn)一步拓展。
3) 線下實踐。學(xué)生在實驗室中進(jìn)行項目實踐活動,如教學(xué)資源設(shè)計中的人口增長模型案例。通過學(xué)生社團(tuán)、創(chuàng)新創(chuàng)業(yè)大賽等活動,學(xué)生可完成附加實踐,如疫情傳播模型、水污染模型等。
4) 在線復(fù)習(xí)。教師會根據(jù)課堂內(nèi)容,布置拓展任務(wù)。學(xué)生通過小組合作的方式完成項目,模擬實際工作中的項目編程過程,培養(yǎng)學(xué)生的團(tuán)隊協(xié)作能力。
線上線下兩種教學(xué)模式相輔相成,在保證學(xué)生對知識充分掌握的基礎(chǔ)上,提高了學(xué)生的項目實踐能力和團(tuán)隊合作意識,使學(xué)生對Java課程設(shè)計的知識得到進(jìn)一步拓展。
2.3 教學(xué)資源設(shè)計
Java程序設(shè)計教學(xué)資源分為基礎(chǔ)知識教學(xué)資源和案例教學(xué)資源兩方面,其中基礎(chǔ)知識教學(xué)資源主要由Java程序設(shè)計教學(xué)大綱和教材為主,資源較為豐富;而案例教學(xué)資源較為稀缺,并且由于其他專業(yè)課尚未授課,大部分學(xué)生的綜合開發(fā)能力不足,難以進(jìn)行實際應(yīng)用場景的案例教學(xué)和項目教學(xué)。融合微積分知識點的案例符合工程認(rèn)證中教學(xué)內(nèi)容設(shè)計上包含多因素、多技術(shù),通過形式化處理用抽象模型標(biāo)識問題的指導(dǎo)思想,同時增強(qiáng)微積分教學(xué)的情境性和應(yīng)用性,可以幫助學(xué)生建立數(shù)學(xué)與計算機(jī)語言之間的聯(lián)系。
以下是一個基于一階線性微分方程求解并應(yīng)用的Java的案例教學(xué)方案設(shè)計,主要功能包括三個模塊:1) 方程求解模塊:一階線性微分求解算法的實現(xiàn)和調(diào)用;2) 問題定義模塊:需要使用微分方程的具體問題定義(人口增長問題、傳染病問題、湖水污染問題等);3) 主頁面模塊:顯示系統(tǒng)菜單,提供各種操作選項。
方案內(nèi)容和知識點對應(yīng)見表1,具體設(shè)計內(nèi)容如下:
1) 設(shè)計微分方程求解類ODESolver,該類針對求解一階線性微分方程問題實現(xiàn)了Euler方法,輸入為初值、求解區(qū)間、步長,輸出為在求解區(qū)間上的離散點處的函數(shù)值近似解。
根據(jù)人口增長問題設(shè)計人口增長類Population,依據(jù)的一階線性微分方程如下:
[dNdt=rN]
其中N是人口數(shù)量,r是人口增長率。使用Euler法或改進(jìn)的Euler法進(jìn)行數(shù)值求解,返回一個二維數(shù)組,每一行表示一個時間點和對應(yīng)的人口數(shù)。
2) 定義接口(ODEFunction) ,聲明對一階線性微分方程問題求解的抽象方法,重構(gòu)ODESolver類實現(xiàn)ODEFunction接口,并使用多態(tài)的方式調(diào)用。
3) 定義一個工具類(Utils) ,提供一些常用的方法,如輸入輸出數(shù)據(jù),格式化日期,關(guān)閉資源等。這樣可以講解函數(shù)定義和調(diào)用的方式和規(guī)范。
4) 定義一個測試類(Test) ,創(chuàng)建ODESolver對象,并調(diào)用其方法來完成各種操作。在調(diào)用過程中,使用try-catch-finally語句來處理可能出現(xiàn)的異常,并打印異常信息。
5) 定義一個主類(Main) ,創(chuàng)建Test對象,并使用循環(huán)語句來顯示主菜單,并根據(jù)用戶輸入執(zhí)行相應(yīng)操作。在循環(huán)中,使用switch-case語句來判斷用戶選擇,并調(diào)用Test對象中相應(yīng)方法。
6) 功能擴(kuò)展和優(yōu)化,使用多線程技術(shù)來實現(xiàn)并發(fā)操作或后臺任務(wù)。
7) 使用Java的圖形庫繪制人口增長曲線,并顯示在窗口中。
8) 根據(jù)ODESolver類的結(jié)構(gòu),設(shè)計求解一階線性微分方程的改進(jìn)Euler方法,梯形法等,并實現(xiàn)ODEFunction接口,理解多態(tài)的作用。
9) 根據(jù)人口增長模型,解決類似一階微分方程問題:
①傳染病問題:
[dIdt=rI(1-IN)-γI]
其中I是感染者的數(shù)量,r是感染率,N是總?cè)丝?,γ是康?fù)率。
②湖水污染問題:
[dCdt=k1(C0-C)-k2C]
其中C是湖水中污染物的濃度,C0是進(jìn)入湖水的污水的濃度,k1是湖水的流出率,k2是污染物的自然凈化率。
2.4 考核方式設(shè)計
根據(jù)本文所設(shè)計的教學(xué)模式、教學(xué)過程、教學(xué)資源,對傳統(tǒng)的以卷面考試為主的學(xué)生成績考核方式進(jìn)行了相應(yīng)的改革。該教學(xué)更加注重于學(xué)生在學(xué)習(xí)過程中的考核評估,將過程性評估和總結(jié)性評估的成績占比分別設(shè)置為60%和40%,具體課程考核方式如表2所示,過程性評估滿分為100分,線上教學(xué)平臺學(xué)習(xí)總分60分,線下課堂講授學(xué)習(xí)總分40分??偨Y(jié)性評估中的實際項目實踐和卷面考試總分都為100分。各部分成績按照權(quán)重得到最終成績。
3 改革效果的評估和反饋
為了探究新的教學(xué)模式對學(xué)生學(xué)習(xí)效果和滿意度的影響,將2021級學(xué)生的部分學(xué)生分為了實驗班和對照班,實驗班使用了改革后的教學(xué)方法,其中實驗班和對照班的人數(shù)分別為82人和81人。使用教學(xué)評價和滿意度問卷,對實驗班和對照班的學(xué)生進(jìn)行了比較。
3.1 教學(xué)評價
實驗班和對照班的學(xué)生在過程性評估和總結(jié)性評估兩個方面進(jìn)行了統(tǒng)計和分析,結(jié)果如圖2所示。實驗班的線上教學(xué)平臺學(xué)習(xí)平均分高于對照班5.6分,說明實驗班的學(xué)生在完成課前預(yù)習(xí)、討論并完成課前問題、完成課后作業(yè)等方面更加積極和主動。實驗班的線下課堂講授學(xué)習(xí)平均分高于對照班4.4分,說明實驗班的學(xué)生在認(rèn)真記錄重點知識、積極與教師互動等方面更加投入和參與。實驗班的實際項目實踐平均分高于對照班8.8分,說明實驗班的學(xué)生在Java程序設(shè)計的實際應(yīng)用能力上明顯優(yōu)于對照班。實驗班的卷面考試平均分也高于對照班8.4分,說明實驗班的學(xué)生在Java程序設(shè)計的理論知識上也明顯優(yōu)于對照班。綜上可知,新的教學(xué)模式能夠有效提高學(xué)生的Java程序設(shè)計綜合能力和水平。
3.2 課程滿意度問卷對比
課程滿意度問卷是衡量學(xué)生對課程內(nèi)容、教學(xué)方法、教師態(tài)度等方面的認(rèn)同和評價的重要工具,也是反映教學(xué)質(zhì)量和效果的間接體現(xiàn)。在期末考試后,采用課程滿意度問卷對實驗班和對照班的學(xué)生進(jìn)行了調(diào)查,問卷共包含10個問題,每個問題有5個選項(非常滿意、滿意、一般、不滿意、非常不滿意),每個選項對應(yīng)5-1分,總分為50分。問卷的結(jié)果如表3所示。
從表3可以看出,實驗班的課程滿意度問卷平均分高于對照班5.6分,說明實驗班的學(xué)生對融合微積分案例的Java程序設(shè)計課程混合教學(xué)模式更加認(rèn)可和滿意。實驗班的標(biāo)準(zhǔn)差小于對照班0.8分,說明實驗班的學(xué)生在課程滿意度上的差異較小,整體評價較為一致。綜上所述,新的教學(xué)模式能夠有效提高學(xué)生的Java程序設(shè)計學(xué)習(xí)效果和滿意度。
4 結(jié)論
針對應(yīng)用型軟件工程專業(yè)人才培養(yǎng)的特點,重新設(shè)計了Java程序設(shè)計課程的教學(xué)模式,采用了線上線下相結(jié)合的混合式教學(xué)方式。這種教學(xué)方式改善了教學(xué)過程,充分利用了課前與課后的非課堂時間,延長了學(xué)習(xí)時間,使知識的學(xué)習(xí)更容易被學(xué)生接受和掌握。同時,本文將微積分知識與Java程序設(shè)計相融合,豐富了教學(xué)資源,有利于學(xué)生進(jìn)一步拓展知識面和視野。此外,本文還完善了考核方式,注重考查學(xué)生的實際應(yīng)用能力和創(chuàng)新能力,培養(yǎng)出更加符合社會發(fā)展需求的應(yīng)用計算機(jī)人才。
參考文獻(xiàn):
[1] 何小翔,蔣葉青,蔣守仁.Java編程語言及互聯(lián)網(wǎng)設(shè)計[J].合肥工業(yè)大學(xué)學(xué)報(自然科學(xué)版),2002,25(1):105-108.
[2] 吳明玉,裴金萍,楊秀娟.“一流課程、兩個引領(lǐng)、三大項目、四類競賽” 人才培養(yǎng)體系探索與實踐[J].黑龍江教育(高教研究與評估),2022(9):55-57.
[3] 姚曄.從程序設(shè)計基礎(chǔ)到Java程序設(shè)計的課程教學(xué)體系構(gòu)建研究[J].計算機(jī)時代,2021(7):95-97.
[4] Sharat Chander, The Arrival of Java 20.[EB/OL]. https://blogs.oracle.com/java/ post/the-arrival-of-java-20
[5] 張綠云,吳啟明,段巧靈.基于企業(yè)需求的Java課程教學(xué)改革研究[J].教育觀察,2021,10(21):121-123.
[6] 盧冶,張其亮,白素琴.“金課” 視域下程序設(shè)計類課程混合式教學(xué)實踐與思考——以Java程序設(shè)計課程為例[J].計算機(jī)教育,2021(8):30-34.
[7] 李國平,王曉青,柴春鵬,等.基于MOOC的線上線下混合教學(xué)模式在《高分子物理》中的教學(xué)探索——以 “高分子的分子運動” 為例[J].高分子通報,2022(10):162-168.
[8] 黃德群.基于高校網(wǎng)絡(luò)教學(xué)平臺的混合學(xué)習(xí)模式應(yīng)用研究[J].遠(yuǎn)程教育雜志,2013,31(3):64-70.
[9] 李政濤.基礎(chǔ)教育的后疫情時代,是“雙線混融教學(xué)” 的新時代[J].中國教育學(xué)刊,2020(5):5.
[10] FORTIN A,LEGAULT M.Development of generic competencies:impact of a mixed teaching approach on students' perceptions[J].Accounting Education,2010,19(1/2):93-122.
【通聯(lián)編輯:王 力】