李忠金 潘開來
摘 要:“C語言程序設(shè)計”是一門綜合性極強的課程。傳統(tǒng)的授課模式難以滿足學(xué)生熟練掌握C語言的需求。隨著網(wǎng)絡(luò)教學(xué)平臺的出現(xiàn),“線上+線下”的教學(xué)模式開始進入大家的視野。本文將“C語言程序設(shè)計”課程與超星泛雅平臺相結(jié)合,這種教學(xué)方式能夠很好地培養(yǎng)學(xué)生的自學(xué)能力和解決問題的能力,并且可以讓老師方便地掌握學(xué)生的學(xué)習(xí)情況,展開針對性的教學(xué)。
關(guān)鍵詞:C語言程序設(shè)計教學(xué);網(wǎng)絡(luò)教學(xué)平臺;課程改革
“C語言程序設(shè)計”不僅僅是計算機專業(yè)的核心課程和基礎(chǔ)課程,也是其他非計算機專業(yè)的公共必修課[1],“C語言程序設(shè)計”對計算機專業(yè)的學(xué)生來說是一切課程的入門課,而對機械、電子和自動化專業(yè)的學(xué)生來說也是后續(xù)單片機等課程的基礎(chǔ),如果沒有扎實的C語言功底,在后續(xù)課程的學(xué)習(xí)中會遇到相當大的困難,甚至還需要重新花時間學(xué)習(xí)C語言?!癈語言程序設(shè)計”的教學(xué)內(nèi)容不僅僅涵蓋幫助學(xué)生掌握C語言的語法,還會指導(dǎo)學(xué)生如何利用計算機編寫C語言代碼來解決實際應(yīng)用的問題。在科學(xué)技術(shù)的發(fā)展過程中,越來越多的領(lǐng)域開始運用計算機技術(shù)來解決實際問題[2]。因此,“C語言程序設(shè)計”課程只培養(yǎng)可以通過考試,能記住基礎(chǔ)C語言使用規(guī)則的學(xué)生是遠遠不夠的,在課堂上學(xué)生要掌握的應(yīng)該是能夠?qū)語言應(yīng)用于解決實際問題的能力。
1 “C語言程序設(shè)計”教學(xué)的問題分析
由于C語言課程的授課要求的特殊性,目前高校中傳統(tǒng)的面授課程的授課方式不能完全滿足C語言的授課要求,導(dǎo)致課程的授課效果往往很不理想。而C語言程序設(shè)計又是一門非常重要的基礎(chǔ)課程。在后續(xù)課程的學(xué)習(xí)中,往往都需要C語言作為基礎(chǔ)。沒有C語言的功底,就無法進行后續(xù)課程的學(xué)習(xí)。而C語言程序設(shè)計課程的突出問題主要是以下幾點:
第一,C語言程序設(shè)計的課程內(nèi)容特點就是知識點繁雜且抽象[3]。在課堂中,授課內(nèi)容大部分為對語法的機械講解,迫使學(xué)生花費大量的時間用于記憶書本上的各種概念,使課程變得枯燥無味,學(xué)生喪失對學(xué)習(xí)C語言的興趣,不僅僅授課效果不好,還會影響后續(xù)以C語言為基礎(chǔ)的課程的學(xué)習(xí)。例如在對C語言中指針的講解上,學(xué)生往往只會記住幾個符號和對應(yīng)的意思,但是對指針在代碼編寫中的實際作用并沒有一個完整的認識,隨著學(xué)習(xí)的深入,還會出現(xiàn)指向結(jié)構(gòu)體的指針以及指針的指針,沒有基礎(chǔ)知識的鋪墊,學(xué)生的學(xué)習(xí)會愈加困難。在這種發(fā)展趨勢下,學(xué)生的學(xué)習(xí)目標最終會從學(xué)習(xí)知識向通過考試轉(zhuǎn)變,喪失了學(xué)習(xí)的初心,學(xué)到的知識也會在期末考試結(jié)束后快速忘卻。
第二,“C語言程序設(shè)計”的學(xué)時不足,課程中必不可少的上機課程往往安排在學(xué)生沒有課的時間[4],但是大學(xué)生活并不僅僅只有上課,學(xué)生在課余時間往往會參加各種豐富的社團活動以及參加各種學(xué)科競賽,這樣“C語言程序設(shè)計”課程的上機時間就會和這些課余活動的時間產(chǎn)生沖突,學(xué)生往往會陷入兩難的選擇中,如果不參加安排好的學(xué)科競賽,平時對比賽的準備就會付諸東流,但是如果參加“C語言程序設(shè)計”的課程,課堂的知識點就會變得零碎,不能形成一個完整的知識結(jié)構(gòu)。在上機的課程中,網(wǎng)絡(luò)平臺中適合初學(xué)者學(xué)習(xí)的C語言試題也少有變化,學(xué)生往往可以非常方便地從搜索引擎中獲取答案,有些學(xué)生雖然在得到答案以后也會讀懂代碼的思想,但是簡單地讀懂代碼和自己編寫代碼還是有本質(zhì)上的區(qū)別的,很多學(xué)生往往能想出解決問題的思路,但是到了實際編寫代碼的階段,往往一頭霧水,不知道如何把想法變成實際的代碼,完全喪失了上機的意義[5]。
第三,學(xué)校對課程的“掛科率”也有相關(guān)的要求,如果掛科率過高會被視為教學(xué)事故。在平時學(xué)生的學(xué)習(xí)效果不理想的情況下,老師就會采用一些方法來降低學(xué)生的掛科率。比如在考試前幾周,老師會給學(xué)生畫出重點,而因為傳統(tǒng)的授課模式下沒有學(xué)到扎實知識的學(xué)生也會對照相應(yīng)的重點學(xué)習(xí),重點題目的出題模式也會相對固定,甚至還有使用早年的期末考試題稍微改動一下,學(xué)生就算原封不動地照搬往年試題的答案也能獲得大部分分數(shù)。雖然這種畫重點,研究往年試題的方式可以一定程度上提高學(xué)生的總體分數(shù),但是不能提高學(xué)生的實際能力,單純漂亮的紙面成績是沒有用的,突擊復(fù)習(xí)出來的高分同學(xué),往往在一個長假后就會忘記學(xué)習(xí)的知識。這種學(xué)習(xí)的模式雖然通過了考試,但是會對后續(xù)以“C語言程序設(shè)計”為基礎(chǔ)的課程的學(xué)習(xí)帶來極大的困擾。
2 基于泛雅平臺的教學(xué)模式改進措施
將“C語言程序設(shè)計”課程與超星泛雅平臺相結(jié)合。超星泛雅平臺是一個開放的網(wǎng)絡(luò)教學(xué)平臺,有豐富的教學(xué)資源和穩(wěn)定的高效的管理模式。通過將課程與網(wǎng)絡(luò)教學(xué)平臺結(jié)合教學(xué)的方式,學(xué)生可以在課后根據(jù)自己知識的掌握情況,利用平臺豐富的教學(xué)資源進行自主學(xué)習(xí)[6]。
而“C語言程序設(shè)計”是一門非常適合開展線上和線下結(jié)合教學(xué)的課程。線下教學(xué)的特點是老師帶領(lǐng)學(xué)生展開學(xué)習(xí),對重點難點可以展開詳細講解,學(xué)生有疑問也可以當堂提出,當堂解決,這種教學(xué)模式對解決鞏固重難點有非常好的效果,老師具有針對性的講解可以省去學(xué)生大量的摸索時間。線下教學(xué)的特點是學(xué)生可以自由地安排自己學(xué)習(xí)的時間和內(nèi)容、線上教學(xué)的環(huán)節(jié),學(xué)生利用課堂上學(xué)習(xí)的知識展開實踐,用課堂的知識解決相應(yīng)的代碼題,如果在解決問題時仍有掌握不牢固的知識點,則可以利用線上教學(xué)的資源進行自主學(xué)習(xí)。
線上和線下的課程應(yīng)該是相互聯(lián)系,相互配合的。線上教學(xué)是線下教學(xué)的補充。線下課程為重要的主干知識。主干知識學(xué)習(xí)時間長,內(nèi)容多,適合在課堂上進行統(tǒng)一講解。線上課程偏向講解零碎的知識點以及進行案例的講解。零碎的知識可以讓學(xué)生自由選擇碎片時間進行學(xué)習(xí)[7],豐富學(xué)生的知識廣度。而案例講解可以讓學(xué)生進一步理解課堂上的知識。除去理論教學(xué),“C語言程序設(shè)計”的實踐教學(xué)也是課程內(nèi)容的重要部分。在“C語言程序設(shè)計”的實驗課上,任課老師可以提前將需要解決的問題放置到網(wǎng)絡(luò)學(xué)習(xí)平臺上,同學(xué)在課下進行思考和編寫代碼,并上傳作業(yè)。
而線下教學(xué)又可以根據(jù)線上教學(xué)的反饋開展有針對性的授課,在線上教學(xué)的過程中,學(xué)生錯誤率較高的代碼或者觀看人數(shù)較多的視頻課程,在線下教學(xué)中也可以抽空講解,加深學(xué)生對相關(guān)知識點的理解。遇到難的問題,學(xué)生在課后難以獨立完成的,可以在線下課堂上采用小組合作討論的方式共同完成,讓學(xué)生得到全方位的發(fā)展。
使用網(wǎng)絡(luò)教學(xué)平臺可以方便線上教學(xué)的開展。在C語言程序設(shè)計的學(xué)習(xí)中,課后鞏固是必不可少的環(huán)節(jié),傳統(tǒng)的教學(xué)模式一般采用手寫代碼老師手工批改的方式進行。由于“C語言程序設(shè)計”課程的特殊性,這種方式不僅不符合一般的編程思路,學(xué)生在寫完作業(yè)后不知道代碼的對錯,不能修改,而且會占用老師大量的時間。有些學(xué)生的字跡潦草,格式不規(guī)范,老師難以辨識,一錯了之顯然不是最好的辦法。使用了網(wǎng)絡(luò)教學(xué)平臺以后,老師可以推送代碼作業(yè)作為線上學(xué)習(xí)的部分任務(wù),一個班級的學(xué)生不需要統(tǒng)一安排時間集中上機,而是自己尋找時間完成相應(yīng)的教學(xué)任務(wù)。在學(xué)生完成代碼并且提交后,由系統(tǒng)自動批改[6]。在超星泛雅的學(xué)生端,學(xué)生可以隨時查看老師布置的作業(yè)和本學(xué)期的學(xué)習(xí)任務(wù),這樣就可以提早安排自己的學(xué)習(xí)任務(wù)。同時在完成每次的作業(yè)以后,網(wǎng)絡(luò)教學(xué)平臺還支持重復(fù)提交的功能,學(xué)生可以不斷重復(fù)提交自己的代碼直到正確,這種方法也符合在一般的工作應(yīng)用中使用C語言程序的習(xí)慣。同時,在完成一個章節(jié)的教學(xué)任務(wù)以后,老師可以通過教學(xué)平臺開展階段性測試,檢測學(xué)生的學(xué)習(xí)情況,如果發(fā)現(xiàn)學(xué)生在某個知識點的掌握情況不甚理想,可以抽一到兩個課時的時間對知識展開講解。章節(jié)測試的成績也可以作為平時成績的打分依據(jù)之一。不同于幾年才更新一版的教科書,系統(tǒng)內(nèi)的代碼問題也可以非常方便地進行更新[8],這樣學(xué)生難以在互聯(lián)網(wǎng)搜索引擎中得到答案,杜絕了學(xué)生在網(wǎng)絡(luò)搜索作業(yè)答案的可能。
網(wǎng)絡(luò)教學(xué)平臺可以讓學(xué)生自由組織時間學(xué)習(xí)。網(wǎng)絡(luò)教學(xué)平臺擁有豐富的教學(xué)資源,不僅僅涵蓋課程內(nèi)的資源,還包括一些拓展知識。如果沒有掌握好上課的知識,學(xué)生可以自行觀看線上的課程內(nèi)資源。如果有學(xué)習(xí)基礎(chǔ)較好的同學(xué),或者對“C語言程序設(shè)計”相當感興趣的同學(xué),想要進一步深入了解“C語言程序設(shè)計”相關(guān)的知識。在沒有網(wǎng)絡(luò)教學(xué)平臺時,同學(xué)們只能自行開展學(xué)習(xí),在網(wǎng)絡(luò)上利用搜索引擎尋找資料自學(xué),但是網(wǎng)絡(luò)上的相關(guān)教程都是網(wǎng)友分享的,其中的專業(yè)性和正確性得不到保證。缺乏辨析能力的學(xué)生在學(xué)習(xí)時很容易誤入歧途,或者在學(xué)習(xí)了知識以后卻沒有養(yǎng)成書寫可讀性強的代碼的習(xí)慣。而在泛雅平臺中的教學(xué)資源,都是經(jīng)過“C語言程序設(shè)計”的教學(xué)團隊審核編寫后的資源,具有正確性和權(quán)威性,還非常適合現(xiàn)階段的學(xué)生學(xué)習(xí)。學(xué)生直接利用泛雅平臺的資源,也省去了查找資料的精力,大大地提高了時間的利用率。
超星泛雅平臺可以留存學(xué)生的在線學(xué)習(xí)記錄,課堂簽到記錄等數(shù)據(jù)。平時的課堂簽到記錄和作業(yè)評分都可以由系統(tǒng)自動留存,在不出錯的情況下不可以更改。最大程度地保證成績的客觀性,確保期末總評成績的公平公正。
3 基于泛雅平臺的教學(xué)模式改進的優(yōu)勢
第一,利用網(wǎng)絡(luò)教學(xué)平臺,可以方便地開展線上和線下相結(jié)合的教學(xué)。在線上教學(xué)的過程中,老師可以根據(jù)學(xué)生的課堂反饋調(diào)整線上教學(xué)的內(nèi)容,學(xué)生可以根據(jù)自己的掌握情況自行學(xué)習(xí)。如果學(xué)生在線下教學(xué)中有難以理解的知識點,可以在線上的教學(xué)平臺中反復(fù)觀看相關(guān)的教學(xué)視頻來鞏固知識。而在線下教學(xué)的環(huán)節(jié)中,老師可以根據(jù)學(xué)生的作業(yè)完成情況調(diào)整線下教學(xué)的內(nèi)容,如果有大多數(shù)人都掌握不理想的知識點,可以利用線下上課的時間進行講解。這種線上線下相結(jié)合的教學(xué)模式,可以最大程度保證教學(xué)效果,讓學(xué)生能夠真正地掌握知識。
第二,利用網(wǎng)絡(luò)教學(xué)平臺,學(xué)生可以自由地支配自己的學(xué)習(xí)時間。大學(xué)的生活不僅僅只有課堂知識的學(xué)習(xí),還有很多課余活動,如果采用傳統(tǒng)的上機課的形式,一次上機的課程需要約兩個小時的時間,非常容易和學(xué)生的課余活動沖突。如果采用與超星泛雅平臺相結(jié)合的教學(xué)方式,學(xué)生的上機課程可以由學(xué)生自由組織時間學(xué)習(xí)。學(xué)生可以利用碎片時間來完成學(xué)習(xí)的任務(wù),提高了學(xué)生的時間利用率,也解決了課程學(xué)習(xí)和科研競賽的沖突。
第三,網(wǎng)絡(luò)教學(xué)平臺中還有非常豐富的教學(xué)資源,在課余時間,學(xué)生不僅僅可以鞏固相關(guān)的知識,還可以開展對應(yīng)的拓展學(xué)習(xí),C語言的知識遠遠不是一節(jié)C語言程序設(shè)計課可以講完的,課堂中只能挑選基礎(chǔ)的知識進行講解,如果學(xué)生有更多的需求可以在教學(xué)平臺上自行查看資料,這樣不僅僅提升了學(xué)生自身的C語言知識水平,也提升了學(xué)生自主學(xué)習(xí)的能力和對C語言的學(xué)習(xí)興趣,而且還能形成一種自主學(xué)習(xí)的良好風(fēng)氣,讓所有的學(xué)生在這股主動學(xué)習(xí)的風(fēng)氣中共同進步。
第四,學(xué)生提交的作業(yè)和階段性考試的結(jié)果都可以方便地保存在系統(tǒng)中。傳統(tǒng)的課堂模式下,學(xué)生的平時成績來源主要是平時作業(yè)和簽到記錄。平時作業(yè)主要為手寫代碼,并不能客觀地反映學(xué)生的真實水平。使用了網(wǎng)絡(luò)教學(xué)平臺以后,學(xué)生的簽到記錄都可以記錄在案,并且課后作業(yè)的批改都可以交由平臺批改,結(jié)果更準確更客觀,同時老師還可以布置階段性測試來降低期末考試所占的比例,避免學(xué)生因為考試發(fā)揮失常導(dǎo)致不及格的現(xiàn)象出現(xiàn)。
結(jié)語
和傳統(tǒng)的教學(xué)模式相比,結(jié)合網(wǎng)絡(luò)教學(xué)平臺開展的線上線下相結(jié)合的授課模式在“C語言程序設(shè)計”課程的教學(xué)中有著顯著的優(yōu)勢。這種教學(xué)模式以線下教學(xué)為主,線下教學(xué)仍舊是“C語言程序設(shè)計”課程的主要授課模式,依靠老師的講解來幫助學(xué)生理解重點、難點知識。但是線下教學(xué)的內(nèi)容會根據(jù)線上教學(xué)的反饋來進行細微的調(diào)整,線上教學(xué)中錯誤率高的題目也可以在線下課堂中當堂講解。線上課程是線下課程的補充,老師通過網(wǎng)絡(luò)教學(xué)平臺布置相關(guān)的任務(wù),學(xué)生通過網(wǎng)絡(luò)平臺來完成相應(yīng)的問題作為傳統(tǒng)的上機模式的代替。同時,在課堂中沒有掌握好的知識或者不在教學(xué)內(nèi)容中拓展知識,在線上教學(xué)平臺中都可以找到權(quán)威可靠的教學(xué)資源,學(xué)生可以自行展開學(xué)習(xí),這種教學(xué)模式培養(yǎng)了學(xué)生對C語言的學(xué)習(xí)興趣,全方位提升了學(xué)生的能力。
參考文獻:
[1]張帆,蘇玉.以計算思維培養(yǎng)為導(dǎo)向的C語言程序設(shè)計課程教學(xué)改革[J].中國管理信息化,2021,24(15):213-214.
[2]李得昇.C語言程序設(shè)計課程教學(xué)改革研究[J].信息記錄材料,2020,21(11):235-236.
[3]賈凌杉.基于教學(xué)平臺線上線下混合式教學(xué)模式C語言課程改革[J].科技資訊,2021,19(11):29-31.
[4]劉萌萌,苗煒麗,余彥瓊,王禎禎.疫情防控背景下的C語言“翻轉(zhuǎn)課堂”教學(xué)改革[J].山西青年,2021(16):147-148.
[5]靳小燕,魏慧琴,周圍.“C語言程序設(shè)計”課程教學(xué)改革與實踐[J].科教導(dǎo)刊,2021(09):149-151.
[6]李英.基于微信平臺的翻轉(zhuǎn)課堂教學(xué)模式在C語言課程教學(xué)中的應(yīng)用[J].科技風(fēng),2019(29):85.
[7]劉洪霞.“互聯(lián)網(wǎng)+翻轉(zhuǎn)課堂”下的C語言程序設(shè)計課程教學(xué)改革[J].科技風(fēng),2020(08):58.
[8]巍巍,李麗萍.MOOC+SPOC教學(xué)模式在程序設(shè)計中的應(yīng)用[J].教育教學(xué)論壇,2021(05):129-132.
作者簡介:李忠金(1986— ),男,漢族,江蘇句容人,博士,講師,研究方向:分布式計算;潘開來(1998— ),男,漢族,浙江溫州人,碩士研究生,研究方向為計算機視覺。