盧靈 胡曉巍
一、引言
C語言是一門廣泛應(yīng)用于計(jì)算機(jī)科學(xué)和工程領(lǐng)域的編程語言,它可以幫助開發(fā)人員構(gòu)建高效、可維護(hù)和可擴(kuò)展的應(yīng)用程序。然而,對(duì)許多初學(xué)者而言,學(xué)習(xí)C語言可能是一項(xiàng)繁瑣和困難的任務(wù)。為了提高C語言課程的教學(xué)效果,我們需要探索新的方法來促進(jìn)學(xué)生的學(xué)習(xí)體驗(yàn)。
近年來,大型語言模型(例如ChatGPT)在自然語言處理領(lǐng)域得到了廣泛應(yīng)用。ChatGPT是一項(xiàng)由OpenAI開發(fā)的人工智能技術(shù),可以生成自然語言文本,并且擁有海量預(yù)訓(xùn)練參數(shù)。在本文中,我們將探討如何使用ChatGPT來促進(jìn)學(xué)生學(xué)習(xí)C語言課程。
本文的目標(biāo)是通過實(shí)驗(yàn)研究,評(píng)估使用ChatGPT作為輔助工具是否能夠提高學(xué)生在C語言課程中的成績(jī)和學(xué)習(xí)效果。我們將比較使用傳統(tǒng)教材和課程授課方法與使用ChatGPT進(jìn)行學(xué)習(xí)的兩組學(xué)生之間的學(xué)習(xí)成果,并分析ChatGPT對(duì)于學(xué)生學(xué)習(xí)結(jié)果的影響。
二、背景
C語言作為一種基礎(chǔ)編程語言,常常用來當(dāng)作編程初學(xué)者的入門課程。然而,學(xué)習(xí)C語言可能會(huì)面臨許多困難和挑戰(zhàn)。例如,許多學(xué)生第一次接觸數(shù)據(jù)類型、數(shù)據(jù)結(jié)構(gòu)的概念,第一次了解程序執(zhí)行的順序,第一次編寫程序代碼,可能會(huì)因?yàn)檎Z法錯(cuò)誤而遇到困境,甚至有些學(xué)生在理解概念時(shí)也會(huì)遇到困難,在程序調(diào)試時(shí)往往束手無策。
為了提高C語言課程的教育效果,需要采取新的方法來幫助學(xué)生克服這些困難并提高他們的學(xué)習(xí)體驗(yàn)。但是使用傳統(tǒng)的輔助工具,如教科書、PPT或微課視頻等,可能存在交互性不足、無法及時(shí)反饋以及缺乏個(gè)性化學(xué)習(xí)的問題。近年來,大型語言模型(例如ChatGPT)已被證明是能夠解決這些問題的一種有效工具。通過與ChatGPT互動(dòng),學(xué)生可以在學(xué)習(xí)過程中獲得更好的反饋和指導(dǎo),并及時(shí)糾正錯(cuò)誤。
三、實(shí)驗(yàn)設(shè)計(jì)
我們?cè)贑語言課程中使用ChatGPT輔助工具進(jìn)行實(shí)驗(yàn),以評(píng)估其對(duì)學(xué)生學(xué)習(xí)效果的影響。實(shí)驗(yàn)將分為兩組:控制組和實(shí)驗(yàn)組。實(shí)驗(yàn)對(duì)象為中等職業(yè)學(xué)校計(jì)算機(jī)應(yīng)用專業(yè)的學(xué)生,以兩個(gè)平行班為例,兩個(gè)班具有相近的學(xué)生數(shù)(每個(gè)班50人)和男女比例(男女比例為3∶1)、入學(xué)時(shí)的文化課成績(jī)相差不大,且基本都沒有接觸過編程語言。實(shí)驗(yàn)時(shí)間為一個(gè)學(xué)期共4個(gè)月。
控制組將以傳統(tǒng)教材和課堂授課的形式進(jìn)行學(xué)習(xí)。這些學(xué)生將根據(jù)傳統(tǒng)的學(xué)習(xí)計(jì)劃,每周參加一次面向C語言的課程,時(shí)間為兩個(gè)課時(shí),并使用教科書來鞏固所學(xué)概念。
實(shí)驗(yàn)組將使用ChatGPT作為輔助工具進(jìn)行學(xué)習(xí),除了與控制組相同的學(xué)習(xí)內(nèi)容外,實(shí)驗(yàn)組還將與ChatGPT互動(dòng)并獲得指導(dǎo)和反饋。
我們將收集來自兩組學(xué)生的數(shù)據(jù),并比較他們?cè)贑語言學(xué)習(xí)方面的進(jìn)展。我們將比較學(xué)生的成績(jī)、編程能力和自我評(píng)價(jià),并分析ChatGPT對(duì)于這些指標(biāo)的影響。
四、實(shí)驗(yàn)實(shí)施過程
控制組學(xué)生能夠獲取的學(xué)習(xí)資源為課程配套教材、教師授課用PPT、微課、實(shí)訓(xùn)指導(dǎo)書,并能查閱互聯(lián)網(wǎng)資料。為了控制研究樣本數(shù)據(jù)的有效性,學(xué)生的實(shí)訓(xùn)機(jī)房對(duì)互聯(lián)網(wǎng)訪問做了嚴(yán)格的控制,通過防火墻設(shè)備的訪問控制策略,使得學(xué)生只能訪問C語言課程相關(guān)的IT類資源,而不能訪問娛樂類無關(guān)資源。
實(shí)驗(yàn)組學(xué)生除了使用上述資源外,將能夠使用ChatGPT與一個(gè)虛擬教師交互。ChatGPT將被配置為能夠回答學(xué)生提出的問題、檢查他們的程序并給出反饋。ChatGPT還將能夠生成與班級(jí)學(xué)習(xí)進(jìn)展相關(guān)的文章和信息,并向?qū)W生進(jìn)行個(gè)性化推送。我們希望ChatGPT能夠提供更加互動(dòng)和個(gè)性化的學(xué)習(xí)體驗(yàn),幫助學(xué)生更好地理解C語言課程。
實(shí)驗(yàn)組學(xué)生學(xué)會(huì)使用ChatGPT后,后續(xù)每次課程都會(huì)使用,而且表現(xiàn)出了濃厚的興趣。當(dāng)然學(xué)生使用ChatGPT可能會(huì)提出一些與課程無關(guān)的問題,但是將此類干擾數(shù)據(jù)去除后,結(jié)果顯示,所有學(xué)生還是會(huì)將ChatGPT應(yīng)用于課堂學(xué)習(xí)。
實(shí)驗(yàn)組學(xué)生使用ChatGPT后,使用百度搜索等其它互聯(lián)網(wǎng)資源的意愿下降很快,而控制組學(xué)生雖然也使用百度搜索解決問題,但總體呈現(xiàn)下降趨勢(shì)。經(jīng)過學(xué)生采訪與內(nèi)容研究,發(fā)現(xiàn)百度關(guān)鍵字搜索往往伴隨著海量的結(jié)果以及置頂?shù)谋姸鄰V告和無關(guān)信息,學(xué)生往往難以辨識(shí),難以快速定位知識(shí)點(diǎn)及答案。多數(shù)學(xué)生會(huì)在無關(guān)的搜索結(jié)果上浪費(fèi)大量時(shí)間,而且伴隨知識(shí)難度的加大,搜索的難度也變大,使用百度搜索出的資源頁面越來越難以解決實(shí)際問題,尤其是在程序調(diào)試階段。相比較而言,ChatGPT對(duì)于問題的解答相當(dāng)精準(zhǔn),沒有紛繁復(fù)雜的無關(guān)信息,學(xué)生對(duì)于結(jié)論信息不需要進(jìn)行多次的再加工,以至于部分學(xué)生將ChatGPT的結(jié)論作為權(quán)威。此外在程序調(diào)試階段,ChatGPT能幫助查找程序bug,并給出調(diào)試建議,甚至比教師的現(xiàn)場(chǎng)指導(dǎo)更加高效。
實(shí)驗(yàn)組學(xué)生使用ChatGPT后向教師求助和翻閱PPT、微課等課堂資料的頻率減少,尤其是翻閱之前資料的次數(shù),因?yàn)镃hatGPT可以迅速定位知識(shí)點(diǎn),并推薦相關(guān)的知識(shí)。相比較,控制組學(xué)生由于沒有更加便捷的資源獲取方式,翻閱PPT、微課等課堂資料的頻率一直處于高位。由于搜索的難度增大,控制組大部分學(xué)生逐漸放棄了通過互聯(lián)網(wǎng)查找資源的方式,轉(zhuǎn)而直接尋求教師,導(dǎo)致教師的指導(dǎo)量加大。
實(shí)驗(yàn)組和控制組的學(xué)生在課堂上查閱書本的頻率并不高,原因在于書本的表述語言并不自然,學(xué)生閱讀的效率低下,學(xué)生對(duì)知識(shí)目錄的定位能力較差。實(shí)驗(yàn)組的學(xué)生在熟悉ChatGPT后,甚至完全拋棄了書本。
五、數(shù)據(jù)收集
我們使用以下指標(biāo)來比較控制組和實(shí)驗(yàn)組的最終成就。
(1)學(xué)術(shù)成績(jī):比較兩組學(xué)生在期中考試和期末考試中的得分,以及兩組學(xué)生在整個(gè)學(xué)期中每次作業(yè)的得分。
為確定影響因子,我們保持了控制組和實(shí)驗(yàn)組同樣的學(xué)習(xí)進(jìn)度,期中考試和期末考試以及平時(shí)的作業(yè)內(nèi)容均一樣。考試以4道編程題為主,配合一些理論知識(shí)相關(guān)的填空題。結(jié)果顯示,控制組的期中期末平均分為60.5分和55分,實(shí)驗(yàn)組的期中期末平均分為72.5和78分。實(shí)驗(yàn)組的考試成績(jī)要明顯優(yōu)于控制組。隨著學(xué)習(xí)內(nèi)容的深入和學(xué)習(xí)難度的加大,控制組的學(xué)生學(xué)習(xí)效果開始滑坡,而實(shí)驗(yàn)組的學(xué)生仍然保持著學(xué)習(xí)的積極性和主動(dòng)性,綜合成績(jī)較為穩(wěn)定。從平時(shí)的作業(yè)效果來看,控制組提交的課堂實(shí)訓(xùn)任務(wù)數(shù)量開始減少,質(zhì)量也有打折,而實(shí)驗(yàn)組提交的實(shí)訓(xùn)任務(wù)數(shù)量質(zhì)量均能達(dá)標(biāo)。
(2)編程能力:使用編程任務(wù)對(duì)學(xué)生進(jìn)行評(píng)估,并比較控制組和實(shí)驗(yàn)組在編寫程序上的表現(xiàn)。
從綜合性編程任務(wù)的訓(xùn)練效果來看,實(shí)驗(yàn)組的學(xué)生能總結(jié)出C語言編程的一套流程,比如文件包含、主函數(shù)入口、定義變量、數(shù)據(jù)類型、條件判斷和循環(huán)的選擇、結(jié)果的輸出等,能根據(jù)題意畫流程圖,并能根據(jù)報(bào)錯(cuò)信息進(jìn)行程序調(diào)試。這類綜合能力的掌握,意味著學(xué)生已經(jīng)具備初級(jí)編程能力,達(dá)到了程序設(shè)計(jì)課程的學(xué)習(xí)目的。而對(duì)于控制組的學(xué)生而言,在程序編寫的過程中,多數(shù)人的邏輯思維比較混亂,不能完成常規(guī)的代碼書寫,面對(duì)新的程序考核題,往往束手無策。
(3)自我評(píng)價(jià):要求學(xué)生對(duì)他們的學(xué)習(xí)體驗(yàn)、學(xué)習(xí)效果和對(duì)ChatGPT的態(tài)度進(jìn)行自我評(píng)價(jià)。
控制組學(xué)生的典型評(píng)價(jià)為:C語言課程晦澀難懂,編程涉及很多未接觸過的數(shù)學(xué)知識(shí)、邏輯思維和英語閱讀能力,這些全新的知識(shí)領(lǐng)域超過了自己的認(rèn)知范疇,因而難以接受,課程學(xué)習(xí)也缺乏趣味性,希望后續(xù)不再開展如此大難度的課程。
實(shí)驗(yàn)組學(xué)生的典型評(píng)價(jià)為:C語言課程能夠拓展自己的思維能力,通過編寫程序,計(jì)算機(jī)確實(shí)能完成很多人難以完成的任務(wù),編程能力就是一種將人的理解轉(zhuǎn)換為計(jì)算機(jī)能執(zhí)行的命令的一種能力。而ChatGPT在學(xué)習(xí)過程中,扮演著小導(dǎo)師的角色,能解答問題,解決困難,甚至能修正程序代碼的錯(cuò)誤問題,讓學(xué)習(xí)更加順暢。期待著ChatGPT能伴隨自己在其他領(lǐng)域繼續(xù)學(xué)習(xí)。
六、實(shí)驗(yàn)結(jié)論
本研究旨在探索使用ChatGPT作為輔助工具,以促進(jìn)學(xué)生對(duì)C語言的學(xué)習(xí)。數(shù)據(jù)顯示,實(shí)驗(yàn)組學(xué)生獲得了更好的學(xué)習(xí)體驗(yàn)和學(xué)術(shù)成績(jī)。由于ChatGPT可以提供個(gè)性化的學(xué)習(xí)體驗(yàn),實(shí)驗(yàn)組學(xué)生表現(xiàn)出了更高的參與度和更積極的學(xué)習(xí)態(tài)度,在編寫C程序的能力上有了顯著提高。事實(shí)證明,以ChatGPT為動(dòng)力的學(xué)習(xí)體驗(yàn)更具吸引力和互動(dòng)性,讓學(xué)生可以提出問題,并立即收到關(guān)于他們代碼的反饋。此外,ChatGPT能夠根據(jù)學(xué)生的個(gè)人需求提供個(gè)性化建議,提供更個(gè)性化的學(xué)習(xí)體驗(yàn),因而ChatGPT有可能徹底改變我們教授編程語言的方式。
責(zé)任編輯 陳春陽