亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        計算機專業(yè)程序設(shè)計課程在線教學(xué)改革探究

        2021-01-07 05:43:48陳凱明馬建輝趙家興
        軟件導(dǎo)刊 2020年12期
        關(guān)鍵詞:助教程序設(shè)計代碼

        徐 偉,陳凱明,馬建輝,趙家興

        (中國科學(xué)技術(shù)大學(xué)計算機科學(xué)與技術(shù)學(xué)院,安徽合肥 230027)

        0 引言

        程序設(shè)計課程是計算機學(xué)科教育的基礎(chǔ),是計算機學(xué)科的入門課程[1-3]。通過這門課學(xué)習(xí),使學(xué)生在掌握相關(guān)編程語言的同時熟練運用編程解決實際問題。一般認為以某種程序設(shè)計語言為載體掌握數(shù)據(jù)結(jié)構(gòu)及算法就是編程能力的內(nèi)涵[4-5]。文獻[6]認為編程能力不僅包含算法和數(shù)據(jù)結(jié)構(gòu),也包括“代碼風(fēng)格”“代碼文件組織與管理”“結(jié)構(gòu)化與模塊化程序設(shè)計”等工程能力方面內(nèi)容。這要求教師在講解程序設(shè)計課程時,不能只講解算法和數(shù)據(jù)結(jié)構(gòu),相關(guān)工程方面的內(nèi)容也要一一介紹;文獻[7]提出一種教賽融合的課程教學(xué)方法,該方法以O(shè)J 系統(tǒng)為核心,通過競賽機制引入改革實驗教學(xué),重點對OJ 系統(tǒng)上機作業(yè)安排、課程實驗環(huán)節(jié)分數(shù)計算、學(xué)生代碼查重進行詳細論述,但關(guān)于OJ 系統(tǒng)如何防止抄襲還缺乏詳細考慮。類似采用OJ 系統(tǒng)進行實驗評測的還有文獻[8-10];文獻[11]通過精選教學(xué)案例、強化實踐編程、建立教學(xué)跟蹤多維反饋體系提高教學(xué)質(zhì)量,但在在線教育特點方面考慮不足。

        自2012 年以來,在線教育在教育領(lǐng)域受到熱捧,越來越多的課程被搬到了網(wǎng)上,教學(xué)思維方式得到變革[12-15]。文獻[16]采用基于慕課的翻轉(zhuǎn)課堂教學(xué)方法提高學(xué)生學(xué)習(xí)積極性,改變了以往傳統(tǒng)的被動學(xué)習(xí)模式,充分利用學(xué)生課外碎片化時間提高學(xué)習(xí)效率,有效地培養(yǎng)學(xué)生的創(chuàng)新能力;文獻[17]討論了優(yōu)化程序設(shè)計課程分數(shù)統(tǒng)計方式,鼓勵學(xué)生更好完成實驗課程;文獻[18]提出混合線上和線下學(xué)習(xí)資源、多樣化教學(xué)、變換教學(xué)內(nèi)容等方式,提高程序設(shè)計課程教學(xué)水平,文獻[19]進行了類似的教學(xué)案例討論。

        中國科學(xué)技術(shù)大學(xué)計算機專業(yè)程序設(shè)計課程一般分為大一上學(xué)期的程序設(shè)計Ⅰ和大一下學(xué)期的程序設(shè)計Ⅱ。均為80 課時,分為40 理論課時和40 實驗課時,每門課3 個學(xué)分,主要以C 語言為例進行講解,附帶簡要介紹Java 和Python 語言。2020 年由于受新冠疫情影響,學(xué)校采用了在線教育形式進行授課,對程序設(shè)計這種實踐性很強的課程教學(xué)提出了諸多挑戰(zhàn)。為了更好地完成教學(xué)任務(wù),授課教師與課程助教經(jīng)過多次研究,對現(xiàn)有在線教學(xué)形式進行教學(xué)改革。

        本文主要介紹中國科學(xué)技術(shù)大學(xué)2020 年春季程序設(shè)計Ⅱ課程在線教學(xué)方式、教學(xué)改革創(chuàng)新點、目前取得的進展與后續(xù)工作方向。與現(xiàn)有研究相比,在線課程教學(xué)基于OJ 系統(tǒng)的使用完成在線實驗,強調(diào)了程序代碼風(fēng)格和調(diào)試工具使用的重要性,對代碼風(fēng)格的具體要求及評分標準進行了系統(tǒng)介紹,優(yōu)化了最終成績的統(tǒng)計方式,最后對抄襲的認定過程進行了詳細描述,具有較強的可操作性。

        1 程序設(shè)計在線教學(xué)方式

        中國科學(xué)技術(shù)大學(xué)2020 年春季程序設(shè)計Ⅱ課程在線教學(xué)采用以下教學(xué)方式:

        (1)在線教學(xué)系統(tǒng)分別試用騰訊課堂和學(xué)校配套的Classin 等直播平臺。

        (2)在線實驗系統(tǒng)采用學(xué)校的在線評測平臺(Online Judge,OJ,https://oj.ustc.edu.cn/)檢測學(xué)生提交的程序源代碼正確性。

        (3)課程PPT 講義存放在課程QQ 群文件和學(xué)校內(nèi)部的blackboard 系統(tǒng)中,供學(xué)生下載和復(fù)習(xí)使用。

        (4)平時課程溝通采用課程QQ 群方式。主要在QQ 群進行日常事務(wù)提醒、課程內(nèi)容討論和對特定問題的投票,了解學(xué)生動態(tài)。如圖1 所示,授課前對學(xué)生遞歸函數(shù)掌握情況進行投票,班級163 位學(xué)生有135 人完成投票。通過這種專題的投票調(diào)研,可讓教師了解學(xué)生某個知識點的掌握情況,更有效地進行課程安排。

        目前程序設(shè)計的教學(xué)平臺、數(shù)據(jù)平臺分別使用不同廠家產(chǎn)品,學(xué)生要從數(shù)個來源獲取學(xué)習(xí)材料。教研組初期希望統(tǒng)一到學(xué)校的在線教學(xué)平臺,經(jīng)過試用,學(xué)生更愿意使用騰訊課堂學(xué)習(xí),使用QQ 群進行教材文件共享,而不是學(xué)校提供的在線教育平臺。學(xué)校在不影響教學(xué)質(zhì)量前提下同意教師自行選擇教學(xué)平臺。

        最終選擇騰訊課堂作為在線教學(xué)平臺、選擇QQ 群作為線上聯(lián)系討論方式、選擇學(xué)校OJ 系統(tǒng)作為在線評測系統(tǒng)。

        圖1 學(xué)生投票調(diào)查實例

        2 程序設(shè)計在線教育改革創(chuàng)新點

        2.1 采用OJ 系統(tǒng)進行程序判誤

        學(xué)生提交的程序編譯執(zhí)行結(jié)果被OJ 系統(tǒng)記錄并保存,然后轉(zhuǎn)交給一個裁判程序。裁判程序首先讀入測試用例和對應(yīng)的標準輸出,再比較學(xué)生程序的輸出數(shù)據(jù)和標準輸出樣例的差異性。最終OJ 系統(tǒng)返回給學(xué)生運行結(jié)果,包括通過、答案錯誤、超時、超內(nèi)存、運行時錯誤或是無法編譯等,并返回程序使用的內(nèi)存、運行時間等信息。實驗結(jié)束后,OJ 系統(tǒng)可對學(xué)生本次提交并通過的成績進行列表顯示,方便教師和助教統(tǒng)計實驗成績。

        2.2 專題介紹程序代碼風(fēng)格

        為提高學(xué)生編程的規(guī)范程度,提高代碼的可維護性,安排相關(guān)助教對代碼風(fēng)格進行專題介紹。由于學(xué)校程序設(shè)計課程主要針對C 語言編程,所以描述的代碼風(fēng)格要求僅對C 語言編程有效。代碼風(fēng)格有5 個大項要求:

        (1)縮進、括號、分行與空格。主要包括縮進規(guī)則(以4個空格或tab 鍵進行縮進)、大括號的風(fēng)格統(tǒng)一(大括號允許單獨分行或緊跟代碼之后,二者擇一使用,不要混用)、分行(對于較長的行、表達式等,應(yīng)以分行方式書寫)、空格(在算符、逗號等,應(yīng)使用一個空格分開,保證顯示工整與美觀)。

        (2)函數(shù)頭與結(jié)構(gòu)體注釋。主要包括函數(shù)頭注釋(函數(shù)的目的、描述函數(shù)的作用、效果)、結(jié)構(gòu)體注釋(注釋結(jié)構(gòu)體用途、成員意義,必要時說明成員取值范圍)。

        (3)函數(shù)、變量、常量與結(jié)構(gòu)體及其成員命名。主要包括命名規(guī)則,如進行大/小駝峰命名,匈牙利命名法等,任何變量、常量、函數(shù)、結(jié)構(gòu)體名稱都應(yīng)直接或比較明確地反映其用途、含義、不允許命名的方式,如拼音命名等。

        (4)代碼模塊化與邏輯注釋。主要包括代碼塊邏輯(如對于較長的代碼/函數(shù)塊,應(yīng)用多行注釋描述過程)、循環(huán)和分支邏輯(如對于進入和退出時變量的變換邏輯進行說明)、變量使用邏輯(如對結(jié)構(gòu)體成員、布爾標志變量說明以什么含義進行使用,何種情況值會變化等)。

        (5)變量、常數(shù)與函數(shù)使用。主要包括不允許的寫法(如禁止使用未初始化的指針等)、需要限制的寫法(如濫用全局變量在函數(shù)間交換信息等)、需要注意的寫法(如有符號整數(shù)的負值與無符號數(shù)進行運算等)。

        2.3 優(yōu)化成績統(tǒng)計方式

        過去的程序設(shè)計課程成績統(tǒng)計方式為考試分(50%)+實驗分(50%)。為引導(dǎo)學(xué)生重視代碼風(fēng)格,程序設(shè)計Ⅱ課程采用考試分(50%)、實驗分(45%)和代碼風(fēng)格分(5%)三項分數(shù)的加權(quán)值進行認定。

        其中代碼風(fēng)格評分細則如下:按風(fēng)格要求的5 個大項,每項1 分,每項只有0 和1 兩個分值,總分5 分。給分的基本原則是:凡是出現(xiàn)“不允許”的代碼寫法,不論數(shù)目均扣分;凡是出現(xiàn)“可限制”寫法較多的才考慮扣分;沒有上述情況可以給分。對代碼風(fēng)格的評價以題目為單位。最終的代碼風(fēng)格分為所有實驗有效代碼風(fēng)格分的均值。只要順利提交作業(yè)均進行考核,對于單個實驗多次提交代碼的,選擇代碼風(fēng)格最好的一個作為實驗的風(fēng)格得分。每次實驗結(jié)束后,由助教對學(xué)生代碼逐個進行檢查,將檢查扣分的原因記錄在代碼風(fēng)格扣分說明文件中。評分結(jié)束后,將代碼風(fēng)格扣分說明文件共享在QQ 群空間,讓學(xué)生了解如何改進代碼風(fēng)格。

        2.4 專題介紹程序調(diào)試工具使用

        對中國科學(xué)技術(shù)大學(xué)2019 年秋季程序設(shè)計Ⅰ某班級學(xué)生進行學(xué)情調(diào)查發(fā)現(xiàn),學(xué)生在編程過程中較少使用IDE環(huán)境自帶的調(diào)試工具,有的學(xué)生僅采用printf 方式查看變量值。這種debug 方式無疑是低效的,為此特意安排一節(jié)課由助教專題講解vs2017、gdb 等工具的調(diào)試方法,并將調(diào)試步驟詳細寫成文檔放在QQ 群文件中,供學(xué)生隨時參考。

        2.5 抄襲認定和處理原則

        由于程序設(shè)計課程學(xué)生人數(shù)較多,完全依靠教師或者助教人工讀代碼進行抄襲認定工作量巨大,所以采用Stanford Moss 系統(tǒng)進行抄襲判定。抄襲認定以題目為單位,并以助教和教師的認定作為最終結(jié)果。代碼查重前先以某種方式將學(xué)生所有“正確”(通過了所有測試用例)的代碼收集起來,使用Moss 系統(tǒng)進行查重服務(wù)。Stanford Moss 系統(tǒng)是一個“在線”的代碼查重系統(tǒng),使用此服務(wù)的用戶在本地機器上運行一個類似shell 的程序,并提供代碼語言、待判定文件所在位置等各種參數(shù),將本地代碼上傳到Moss 在線系統(tǒng)。當(dāng)在線系統(tǒng)完成抄襲判定后會返回一個URL,在這個網(wǎng)址可以以列表形式查看判重結(jié)論,如圖2 所示。圖2依次展示被比較的兩個文件、其重復(fù)比例以及重復(fù)行數(shù)目,且該頁面文件按照“最可能是抄襲的在前”順序排列。最后由助教點擊Moss 結(jié)果的某一行生成代碼查重詳情頁,助教根據(jù)Moss 詳情頁結(jié)果進行人工閱覽,認定是否抄襲,如圖3 所示。

        圖2 Moss 系統(tǒng)查重結(jié)果(已隱去部分學(xué)號)

        圖3 Moss 查重詳情頁(已隱去部分學(xué)號)

        采用Moss 系統(tǒng)后對于抄襲有一定的震懾作用,但目前網(wǎng)上已有不少針對Moss 系統(tǒng)的逃避方法,如何高效地預(yù)防抄襲仍是研究重點。認定發(fā)生抄襲后,對于涉嫌抄襲者要視情節(jié)輕重,分為“警告”“扣分”兩種處理。被警告時其對應(yīng)題目分數(shù)不變,對應(yīng)代碼風(fēng)格分數(shù)不變,但如下次再判定為“警告”則升格為“扣分”??鄯謺r,該題目分數(shù)記為0分,代碼風(fēng)格分記為“空”(不會計入總平均代碼風(fēng)格分)??鄯趾笤谘a交平臺上補交本題,或其它未通過的題目通過OJ 及進一步查重,按原分值的60%計,仍有抄襲的按0 分計。

        3 成績及后續(xù)工作方向

        3.1 取得的成績

        (1)學(xué)生代碼風(fēng)格水平有了較大程度提高。學(xué)生大多可以按照規(guī)范的風(fēng)格編寫代碼,圖4 為2020 年春季程序設(shè)計Ⅱ某班級163 位學(xué)生的5 次實驗代碼風(fēng)格平均分柱狀圖,可以看到73.6%的學(xué)生代碼風(fēng)格在4 分以上(滿分5分),基本符合代碼風(fēng)格要求。

        (2)從OJ 系統(tǒng)通過情況看,學(xué)生對課程學(xué)習(xí)達到基本掌握程度。圖5 為2020 年春季程序設(shè)計Ⅱ某班級163 位學(xué)生的5 次實驗編程總分數(shù)柱狀圖,可以發(fā)現(xiàn)81.6%的學(xué)生編程分數(shù)在40 分以上(滿分60 分),顯示學(xué)生對相關(guān)課程實驗掌握情況良好。

        3.2 后續(xù)工作方向

        (1)網(wǎng)絡(luò)教學(xué)應(yīng)進一步加強師生互動。師生互動是教學(xué)關(guān)鍵環(huán)節(jié)。采用面對面方式教學(xué),教師可快速了解到學(xué)生的理解程度,針對學(xué)生不明白知識點進行再次講解。當(dāng)轉(zhuǎn)為線上教學(xué)時,師生關(guān)系無法有效建立,雖然通過相關(guān)的直播軟件可以有效了解學(xué)生的出勤率,但是很難監(jiān)控學(xué)生是否真在學(xué)習(xí),或是僅僅開著直播在做其它事情,相比之下線上教學(xué)效果更加依賴教師的授課水平。授課教師需要更加鉆研授課內(nèi)容,提高授課質(zhì)量,提高學(xué)生的學(xué)習(xí)興趣,增加師生互動環(huán)節(jié),需持續(xù)改進以提高教學(xué)有效性。

        圖4 代碼風(fēng)格分數(shù)分布

        圖5 編程分數(shù)分布

        (2)解決學(xué)生在線debug 調(diào)試困難。程序設(shè)計課程是一門實踐性很強的課程,就像學(xué)騎自行車,聽別人多次講解自行車如何騎行,自己獨立騎行可能還是存在很大問題。以2020 年春季程序設(shè)計Ⅱ某班級163 名學(xué)生為例,初期招聘6 名高年級學(xué)生助教,如果在校學(xué)習(xí)輔導(dǎo)人數(shù)是夠的,但由于網(wǎng)絡(luò)交流效率遠低于當(dāng)面交流,助教聽懂學(xué)生編寫一個復(fù)雜些的邏輯流程需要耗費更多的時間和精力,因此在線debug 存在許多不便和不暢之處,這是在線教育需要考慮的問題之一。

        (3)減少和避免抄襲現(xiàn)象。以2020 年春季程序設(shè)計Ⅱ某班級的前5 次實驗為例,仍有個別學(xué)生存在抄襲現(xiàn)象。數(shù)據(jù)反映出抄襲人數(shù)與實驗題目難度成正比。因為現(xiàn)有數(shù)據(jù)量較少,所以正比關(guān)系是否成立還要進一步收集數(shù)據(jù)并分析。如何有效減少和避免抄襲現(xiàn)象是教師努力的方向。

        4 結(jié)語

        程序設(shè)計課程作為計算機專業(yè)核心課程,地位不容質(zhì)疑。通過OJ 系統(tǒng)和防作弊系統(tǒng),簡化了在線教學(xué)中實驗判定過程;通過強調(diào)代碼風(fēng)格,提高了代碼作業(yè)的工整程度。這些新的教學(xué)改革舉措對本課程在線教學(xué)幫助很大,但是對于在線教育中師生交流不便、代碼輔導(dǎo)調(diào)試困難等問題尚未很好地解決。后續(xù)需研究更有效的教學(xué)方法,努力提高在線教學(xué)質(zhì)量。

        猜你喜歡
        助教程序設(shè)計代碼
        基于Visual Studio Code的C語言程序設(shè)計實踐教學(xué)探索
        計算機教育(2020年5期)2020-07-24 08:52:56
        從細節(jié)入手,談PLC程序設(shè)計技巧
        電子制作(2019年9期)2019-05-30 09:42:04
        創(chuàng)世代碼
        動漫星空(2018年11期)2018-10-26 02:24:02
        創(chuàng)世代碼
        動漫星空(2018年2期)2018-10-26 02:11:00
        創(chuàng)世代碼
        動漫星空(2018年9期)2018-10-26 01:16:48
        創(chuàng)世代碼
        動漫星空(2018年5期)2018-10-26 01:15:02
        A study on the teaching practice of vocational English teaching connected with the working processes
        高職高專院校C語言程序設(shè)計教學(xué)改革探索
        PLC梯形圖程序設(shè)計技巧及應(yīng)用
        激情综合色五月丁香六月亚洲| 日本黄色影院一区二区免费看| 国产一区亚洲二区三区| 亚洲精品无码av人在线播放| 精品久久久久久无码国产| 日韩亚洲欧美精品| 亚洲av色香蕉一区二区三区av| 尤物在线观看一区蜜桃| 亚洲欧洲精品无码av| 欧美日本国产三级在线| 岛国av一区二区三区| 亚洲一区二区日韩精品在线| 亚洲av无码乱码在线观看裸奔| 人禽无码视频在线观看| 精品无码人妻久久久一区二区三区| 亚洲精品一区二区三区新线路| 丰满熟妇乱又伦精品| 天躁夜夜躁狼狠躁| 真人在线射美女视频在线观看| 亚洲精品久久麻豆蜜桃| 2021亚洲国产精品无码| 国产成人啪精品视频免费软件| 亚洲AV无码专区国产H小说| 日韩人妻大奶子生活片| 一本无码中文字幕在线观| 亚洲欧洲偷自拍图片区| 国产精品亚洲国产| 国产熟女自拍av网站| 亚洲中文字幕久久精品无码a| 亚洲精品永久在线观看| 中文字幕色视频在线播放| 国产免费在线观看不卡| 麻豆精品国产精华精华液好用吗| 一本大道东京热无码中字| 国产一级黄色性生活片| 熟女一区二区三区在线观看| 无码精品a∨在线观看| 国产自在自线午夜精品视频在 | 日本免费不卡一区| 精品国精品自拍自在线| 国产欧美va欧美va香蕉在线|