国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

學(xué)生編程行為分析工具

2022-10-01 05:33成都市第四十九中學(xué)校徐遠(yuǎn)謀陳奇玖
發(fā)明與創(chuàng)新 2022年28期
關(guān)鍵詞:鼠標(biāo)編程工具

◆成都市第四十九中學(xué)校 徐遠(yuǎn)謀 陳奇玖

當(dāng)前,很多同學(xué)在校外學(xué)習(xí)編程,部分中小學(xué)校也開設(shè)了相應(yīng)的編程課程。教師一般通過查看學(xué)生提交的編程作品,歸納作品中出現(xiàn)的高頻錯(cuò)誤,再在課堂上進(jìn)行統(tǒng)一講解。

在編程活動(dòng)中,每個(gè)學(xué)生面對同一個(gè)問題時(shí),解決方案各不相同。這就意味著,教師需要花費(fèi)大量的時(shí)間分析、指出每個(gè)學(xué)生可能出現(xiàn)的問題,再提出解決方案。然而教師的精力和時(shí)間有限,無法及時(shí)糾正每個(gè)學(xué)生的錯(cuò)誤,以致很多學(xué)生在學(xué)習(xí)編程的過程中遇到問題卻得不到及時(shí)指導(dǎo),影響了學(xué)習(xí)效率。

要想改變這一現(xiàn)狀,必須加深教師對學(xué)生編程行為的了解程度。換言之,需要一種方便教師更好地了解學(xué)生編程行為的工具。因此,開發(fā)并使用自動(dòng)數(shù)據(jù)收集和分析技術(shù),及時(shí)掌握學(xué)生在編程活動(dòng)中的行為是非常有必要的。

收集、分析資料后我們發(fā)現(xiàn),學(xué)習(xí)分析技術(shù)能幫助教師解決上述問題。學(xué)習(xí)分析技術(shù)是指收集大量的學(xué)生學(xué)習(xí)數(shù)據(jù)并進(jìn)行深度分析,進(jìn)而評價(jià)學(xué)生的學(xué)習(xí)進(jìn)度、預(yù)測其未來的學(xué)習(xí)表現(xiàn),并發(fā)現(xiàn)其在學(xué)習(xí)過程中的潛在問題。

如果能將學(xué)生編程活動(dòng)的編程環(huán)境整合到學(xué)習(xí)分析系統(tǒng)中,并追蹤其編程的每個(gè)步驟,不僅能幫助教師對學(xué)生的思維和編程任務(wù)的演變過程進(jìn)行分析,還能讓教師及時(shí)調(diào)整教學(xué)內(nèi)容或方式,加強(qiáng)針對性的輔導(dǎo)。然而,目前學(xué)習(xí)分析技術(shù)應(yīng)用于學(xué)生編程活動(dòng)進(jìn)行數(shù)據(jù)分析的相關(guān)研究相對較少。

為此,我們基于鼠標(biāo)點(diǎn)擊流技術(shù),使用Python編程語言,開發(fā)了一個(gè)收集、分析學(xué)生在編程活動(dòng)中與編程環(huán)境交互數(shù)據(jù)的工具。

一、設(shè)計(jì)原理

編程行為分析工具收集學(xué)生在編程活動(dòng)中的鼠標(biāo)軌跡、停留時(shí)間等數(shù)據(jù),得到在編程環(huán)境的不同區(qū)域中,學(xué)生鼠標(biāo)停留時(shí)間的可視化圖形,進(jìn)而對學(xué)生在編程活動(dòng)中的行為模式進(jìn)行分析。利用該工具還能發(fā)現(xiàn)學(xué)生在編程中遇到的問題,有效引導(dǎo)教師有針對性地幫助學(xué)生解決問題。

學(xué)生運(yùn)行該工具并按照教師的說明與工具給出的提示進(jìn)行操作,即可在軟件編輯環(huán)境中進(jìn)行區(qū)域的劃分。然后,工具會自動(dòng)收集學(xué)生在編程過程中鼠標(biāo)點(diǎn)擊的相關(guān)數(shù)據(jù),并將數(shù)據(jù)保存為文本文檔,通過socket局域網(wǎng)傳送到教師端。其工作流程如圖1所示。

通過運(yùn)行該工具的教師端,教師可按照工具給出的提示,選擇以柱狀圖、散點(diǎn)圖或熱力圖的形式,查看每個(gè)學(xué)生在不同區(qū)域的鼠標(biāo)停留時(shí)間,進(jìn)而對學(xué)生的編程行為模式進(jìn)行分析,及時(shí)采取有針對性的措施,提升教學(xué)效果。

二、結(jié)構(gòu)組成

編程行為分析工具分為基本信息錄入、編程環(huán)境區(qū)域劃分、數(shù)據(jù)收集和數(shù)據(jù)的可視化呈現(xiàn)四部分。

1.基本信息錄入

學(xué)生端電腦開機(jī)后,編程行為分析工具即可自動(dòng)開啟運(yùn)行,并對目標(biāo)程序(即學(xué)生使用的編程軟件)進(jìn)行監(jiān)測。若監(jiān)測到目標(biāo)程序啟動(dòng),則彈出相應(yīng)的對話窗口,如圖2所示。

圖1 學(xué)生編程行為分析工具工作流程圖

圖2 工具啟動(dòng)后的窗口(截圖)

學(xué)生可以根據(jù)提示輸入其基本信息(姓名或?qū)W號等)登錄,之后選擇“開始監(jiān)測”,即可對鼠標(biāo)點(diǎn)擊行為進(jìn)行監(jiān)測。這種登錄方式不僅簡單快捷,而且可在學(xué)期結(jié)束后有針對性地對學(xué)生的編程學(xué)習(xí)過程進(jìn)行整體呈現(xiàn),便于教師指導(dǎo)。

2.編程環(huán)境區(qū)域劃分與數(shù)據(jù)收集

編程環(huán)境區(qū)域一般被劃分為4個(gè)。以慧編程軟件為例,分別是舞臺區(qū)、積木區(qū)、角色區(qū)和腳本區(qū),如圖3所示。

圖3 編程環(huán)境區(qū)域劃分圖(截圖)

若要更改環(huán)境區(qū)域,學(xué)生可以在程序主界面按照提示選擇進(jìn)入?yún)^(qū)域劃分工具,該工具就會給出相應(yīng)的提示信息。如圖4所示。

圖4 更改環(huán)境區(qū)域的界面(截圖)

學(xué)生只需根據(jù)提示信息輸入需創(chuàng)建的區(qū)域個(gè)數(shù),并按照提示,將鼠標(biāo)移動(dòng)到對應(yīng)位置確定兩個(gè)坐標(biāo)點(diǎn)(分別是矩形區(qū)域的左上角頂點(diǎn)和右下角頂點(diǎn)),即可劃分一個(gè)區(qū)域。重復(fù)上述過程就可以確定多個(gè)區(qū)域。

該工具使用兩個(gè)坐標(biāo)點(diǎn)確定區(qū)域的方法,增加了工具的可移植性,意味著教師可將該工具應(yīng)用于學(xué)生使用的各類編程環(huán)境。通過在不同編程環(huán)境中對區(qū)域的劃分進(jìn)行更改,收集學(xué)生在編程中鼠標(biāo)移動(dòng)的數(shù)據(jù),并對收集的數(shù)據(jù)進(jìn)行可視化呈現(xiàn),教師可識別學(xué)生的編程行為,并了解學(xué)生的編程學(xué)習(xí)情況。

待編程環(huán)境區(qū)域劃分完成之后,學(xué)生即可進(jìn)行正常的編程活動(dòng)。工具在指定的時(shí)間間隔內(nèi),自動(dòng)記錄存儲鼠標(biāo)的位置坐標(biāo)數(shù)據(jù),分析坐標(biāo)數(shù)據(jù)后自動(dòng)推算出其所處區(qū)域。

學(xué)生鼠標(biāo)行為數(shù)據(jù)庫E-R圖如圖5所示,從圖中可以發(fā)現(xiàn)基本信息和鼠標(biāo)行為之間的互動(dòng)關(guān)系。每次互動(dòng)都包含創(chuàng)建、開啟和響應(yīng)三個(gè)階段,學(xué)生在編程中的鼠標(biāo)行為數(shù)據(jù)將被統(tǒng)一存放在鼠標(biāo)行為表中,并與基本信息表相對應(yīng)。

圖5 學(xué)生鼠標(biāo)行為數(shù)據(jù)庫E-R圖

3.數(shù)據(jù)的可視化呈現(xiàn)

學(xué)生關(guān)閉編程軟件后,程序自動(dòng)將鼠標(biāo)行為數(shù)據(jù)發(fā)送到教師端。教師端通過調(diào)用Pyecharts、matplotlib和Pygame三個(gè)模 塊,對學(xué)生數(shù)據(jù)進(jìn)行可視化轉(zhuǎn)化,以柱狀圖、散點(diǎn)圖和熱力圖等形式呈現(xiàn)不同學(xué)生的鼠標(biāo)在四個(gè)區(qū)域停留時(shí)間的數(shù)據(jù)。

柱狀圖和散點(diǎn)圖便于教師理解學(xué)生的鼠標(biāo)點(diǎn)擊流數(shù)據(jù)以及數(shù)據(jù)之間的關(guān)系,快速、直觀地讀取原始數(shù)據(jù)。熱力圖以特殊高亮的形式顯示學(xué)生鼠標(biāo)停留的區(qū)域,還能通過不同區(qū)域顏色的深淺,判斷學(xué)生在哪些區(qū)域中停留的時(shí)間最久,進(jìn)而推斷學(xué)生在該區(qū)域的學(xué)習(xí)是否遇到困難。

通過對可視化柱狀圖、散點(diǎn)圖和熱力圖的分析,教師可以了解不同學(xué)生的學(xué)習(xí)情況和整體的疑難點(diǎn)。

三、測試與效果評價(jià)

我們邀請幾位同學(xué)在同一局域網(wǎng)內(nèi)進(jìn)行工具的測試。測試項(xiàng)目案例為“彈球游戲”,這幾位同學(xué)各自在電腦上的慧編程軟件中獨(dú)立、自主地完成“彈球游戲”的制作。

在制作游戲的過程中,編程行為分析工具對被測者鼠標(biāo)活動(dòng)的狀態(tài)進(jìn)行監(jiān)測和數(shù)據(jù)收集。待“彈球游戲”制作完成,退出慧編程軟件后,工具將收集的數(shù)據(jù)發(fā)送到教師端,在教師端的程序中成功導(dǎo)出被測者編程數(shù)據(jù)的柱狀圖、散點(diǎn)圖和熱力圖。

結(jié)合圖6中二號同學(xué)在編寫彈球游戲過程中的散點(diǎn)圖和熱力圖可發(fā)現(xiàn),該同學(xué)在屏幕左側(cè)和中間的區(qū)域鼠標(biāo)停留的時(shí)間較長。由該同學(xué)使用的編程軟件慧編程及其分區(qū)可分析得出,該同學(xué)可能對編程模塊的選擇以及對展示區(qū)對象的調(diào)整用時(shí)較長。

結(jié)合圖7中三號同學(xué)在編寫“彈球游戲”過程中的散點(diǎn)圖和熱力圖可以發(fā)現(xiàn),該同學(xué)在調(diào)整展示區(qū)對象用時(shí)較短,對編程模塊選擇用時(shí)較長,在腳本區(qū)調(diào)整程序順序的用時(shí)也很長。

圖6 二號同學(xué)編程過程的數(shù)據(jù)結(jié)果(截圖)

圖7 三號同學(xué)編程過程的數(shù)據(jù)結(jié)果(截圖)

因上述散點(diǎn)圖和熱力圖只能看出同學(xué)編程時(shí)在各個(gè)區(qū)域的使用時(shí)間占比,所以還要通過柱狀圖了解同學(xué)的編程總時(shí)長。如圖8,三號同學(xué)整體編程時(shí)間久于二號同學(xué),可以推斷三號同學(xué)在該程序的思維或?qū)懛ㄉ喜蝗缍柾瑢W(xué)熟練。

不同的圖像也有各自的優(yōu)缺點(diǎn),比如:散點(diǎn)圖可以看出單位時(shí)間內(nèi)鼠標(biāo)停留的位置,但不能準(zhǔn)確地顯示在各個(gè)分區(qū)停留的時(shí)長;柱狀圖呈現(xiàn)的數(shù)據(jù)一目了然,但更細(xì)致的數(shù)據(jù)如鼠標(biāo)停留的具體位置無法展現(xiàn);……

圖 8 二號、三號兩位同學(xué)實(shí)驗(yàn)結(jié)果的柱狀圖

在測試結(jié)束后,我們和參與測試的同學(xué)進(jìn)行了簡單的交流,發(fā)現(xiàn)通過數(shù)據(jù)可視化呈現(xiàn)的結(jié)果,判斷同學(xué)可能出現(xiàn)的疑難點(diǎn)與他們實(shí)際遇到的疑難點(diǎn)有較高的契合度。這進(jìn)一步說明了該工具的可行性。

四、結(jié)論與展望

在整個(gè)項(xiàng)目中,陳奇玖負(fù)責(zé)編寫主要程序,徐遠(yuǎn)謀負(fù)責(zé)撰寫文稿、組織學(xué)生測試。

我們基于鼠標(biāo)點(diǎn)擊流技術(shù),使用Python語言開發(fā)的分析學(xué)生編程行為工具并進(jìn)行測試,證明了該工具對學(xué)生編程學(xué)習(xí)狀態(tài)的可視化有良好的作用,解決了以往相關(guān)研究中不能直接監(jiān)控學(xué)生編程活動(dòng)中的鼠標(biāo)行為和不能適用于不同編程的軟件等問題。

該工具對幫助教師了解學(xué)生編程活動(dòng)中的行為情況有良好的作用,能提高課堂效率,對編程教學(xué),尤其是針對較低年級的編程教學(xué)有極大的幫助。今后將擴(kuò)大參與測試工具的人數(shù),進(jìn)一步驗(yàn)證工具的有效性。

專家點(diǎn)評

徐遠(yuǎn)謀、陳奇玖同學(xué)的學(xué)生編程行為分析工具,是一個(gè)富有前瞻性和生命力的創(chuàng)新課題。

當(dāng)今,人工智能技術(shù)發(fā)展迅猛,它是一個(gè)以計(jì)算機(jī)科學(xué)為基礎(chǔ),由計(jì)算機(jī)、心理學(xué)、哲學(xué)等多學(xué)科融合的交叉學(xué)科、新興學(xué)科,而編程則是讓計(jì)算機(jī)代碼解決某個(gè)問題,對某個(gè)計(jì)算體系規(guī)定一定的運(yùn)算方式,使計(jì)算體系按照該計(jì)算方式運(yùn)行,并最終得出相應(yīng)結(jié)果的過程。因此,編程是人工智能的基礎(chǔ)。

兩位同學(xué)能找到這樣的課題并進(jìn)行實(shí)踐,旨在突破編程教與學(xué)中的難點(diǎn),其敢想、敢做的創(chuàng)新精神值得推崇。這個(gè)課題,從應(yīng)用前景來看,如果能真正運(yùn)用好,將給中小學(xué)編程教學(xué)帶來跨越式的發(fā)展。

但是,僅將鼠標(biāo)停留的時(shí)間作為學(xué)生編程行為分析的依據(jù),其科學(xué)性還值得商榷。希望兩位同學(xué)在課余時(shí)間繼續(xù)探索。

猜你喜歡
鼠標(biāo)編程工具
元征X-431實(shí)測:奔馳發(fā)動(dòng)機(jī)編程
波比的工具
波比的工具
玩游戲?qū)W編程,Blockly Games上手玩
紡織機(jī)上誕生的編程
準(zhǔn)備工具:步驟:
學(xué)編程,先畫畫
“巧用”工具
鼠標(biāo)折疊筆
45歲的鼠標(biāo)