謝黨恩 梁瑞 張志立
關(guān)鍵詞:前置性學(xué)習;PTA 平臺;課程改革;程序設(shè)計基礎(chǔ)
1 研究背景
程序設(shè)計基礎(chǔ)課程是計算機相關(guān)專業(yè)新生入校后的第一門專業(yè)基礎(chǔ)課[1]。該課程是一門實踐性很強的必修課,也是學(xué)習后續(xù)專業(yè)知識的基礎(chǔ),因此在整個課程體系中占據(jù)舉足輕重的地位。
結(jié)合學(xué)校實際,該課程以C語言為依托,主要講授程序設(shè)計語言的基本原理和程序設(shè)計方法。在整個培養(yǎng)方案中,期望通過本課程的學(xué)習,使學(xué)生初步形成良好的程序設(shè)計風格,能夠利用編程工具熟練進行程序的編輯、編譯、連接、運行并對程序能夠調(diào)試和測試,具備初步的分析問題和利用計算機表述復(fù)雜工程問題的能力,為后續(xù)課程如數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο蟪绦蛟O(shè)計等課程打下良好的專業(yè)基礎(chǔ)。
2 現(xiàn)狀分析
程序設(shè)計基礎(chǔ)課程內(nèi)容較多,實踐性較強,有一定抽象性,對初學(xué)者有一定難度。為配合高校課程改革“減學(xué)分、減學(xué)時”的總體指導(dǎo)思想,程序設(shè)計基礎(chǔ)課程的學(xué)時也受到一定程度的縮減[2],導(dǎo)致教師在課時的安排上總是存在捉襟見肘的困難,加之新生入校后軍訓(xùn)還要占用2周左右的時間,進一步加劇了“課時不足”現(xiàn)象的產(chǎn)生。“課時不足”最終表現(xiàn)在任課教師講授到在該課程后面重點內(nèi)容(如指針、鏈表等)時只能點到為止,而這部分內(nèi)容對后續(xù)課程數(shù)據(jù)結(jié)構(gòu)等的學(xué)習是至關(guān)重要的,由此會引發(fā)一系列不良的連鎖反應(yīng)。
3 前置性學(xué)習的實踐研究
3.1 前置性學(xué)習
“前置性學(xué)習”本質(zhì)上是學(xué)習起點的前移,即學(xué)生先進行個性化的自學(xué),將學(xué)習任務(wù)提前。前置性學(xué)習一般安排在課外進行,教師可以提前發(fā)布相關(guān)章節(jié)任務(wù),然后讓學(xué)習者帶著問題和思考進行自主學(xué)習。
3.2 前置性學(xué)習的可行性
1)環(huán)境及資源可行性
隨著我國“互聯(lián)網(wǎng)+教育”工程的不斷推進,網(wǎng)絡(luò)已經(jīng)觸及千家萬戶,即便是在偏遠的農(nóng)村,互聯(lián)網(wǎng)也都已經(jīng)有效覆蓋,為遠程教學(xué)提供了保障[3]。同時,各類網(wǎng)絡(luò)教育資源平臺也應(yīng)運而生,尤其是近幾年受疫情影響,各高校都建有自己的網(wǎng)絡(luò)教學(xué)平臺,為前置性學(xué)習提供了條件。
2)設(shè)備可行性
隨著計算機硬件技術(shù)的發(fā)展,硬件設(shè)備的性能越來越高,但價格越來越低,這也為普通家庭購買電腦提供了可行性。對于高考被錄取到計算機相關(guān)專業(yè)的學(xué)生,配置計算機是開展后續(xù)學(xué)習的前提條件。因此,很多家長在接到孩子錄取通知書后,都會在開學(xué)前為學(xué)生配置一臺個人計算機(以筆記本電腦為主),這也為本課程的前置性學(xué)習的實踐操作提供了可行性。
3)時間可行性
從學(xué)生接到入學(xué)通知書(以許昌學(xué)院為例,一般在8月10日左右)至學(xué)生入學(xué)報到(9月初),學(xué)生在家有大約20天的空閑時間,利用這段時間將學(xué)生組織起來每天抽出3~4小時進行程序設(shè)計基礎(chǔ)課程的前置性學(xué)習,絕大部分學(xué)生是可以接受的。
3.3 前置性學(xué)習的實施方法
前置性學(xué)習以學(xué)生自學(xué)為主,但需要任課教師制定相關(guān)的學(xué)習內(nèi)容、完備的自學(xué)方法、還要精選與自學(xué)內(nèi)容匹配的練習題,同時還要與學(xué)生建立通暢的線上答疑渠道(QQ群等)。
3.3.1 優(yōu)選合適的前置學(xué)習內(nèi)容
針對程序設(shè)計基礎(chǔ)課程,課程組在實施過程中,選取了教材前三章的內(nèi)容并凝練為5個基本學(xué)習模塊作為學(xué)生前置性學(xué)習的主要內(nèi)容。這些模塊主要包括:
1)程序設(shè)計和C語言介紹:讓學(xué)生了解程序設(shè)計語言的內(nèi)涵,熟練掌握C語言程序的開發(fā)過程。
2)C語言的基本知識:介紹C語言的基本數(shù)據(jù)類型、常量和變量的使用方法、C語言的各類運算法和表達式的使用方法等。
3)順序結(jié)構(gòu)程序設(shè)計:重點掌握printf 語句和scanf語句的使用方法。
4)分支結(jié)構(gòu)程序設(shè)計:重點強調(diào)程序流程圖的繪制方法,掌握單分支、雙分支及多分支的程序設(shè)計實現(xiàn)方法。
5)循環(huán)結(jié)構(gòu)程序設(shè)計:主要介紹C語言的3種循環(huán)語句實現(xiàn)循環(huán)結(jié)構(gòu)的程序代碼設(shè)計。
3.3.2 制定授課方案
授課方案的制定采用騰訊會議隔天授課的形式,每次授課時長2個小時。采用隔天授課主要是考慮到學(xué)習者的接受能力,放慢節(jié)奏,確保學(xué)生打牢基礎(chǔ)。
如表1所示為實施過程中的具體時間安排表。其中第一次課主要為沒有電腦的同學(xué)采購電腦做準備,幫助同學(xué)們選擇機型,根據(jù)自己的所學(xué)專業(yè)選擇合適的硬件配置,盡量讓學(xué)生獲得較高的性價比。接下來大概有一周的時間供大家去采購硬件設(shè)備。后續(xù)的7 堂課,基本上按照預(yù)定的模塊內(nèi)容開展線上授課。
線上授課全程錄像并在課后及時上傳到學(xué)習通在線學(xué)習平臺,供同學(xué)們進行回放學(xué)習,也為不能參與直播課堂的同學(xué)提供了學(xué)習機會。
3.3.3 精選同步練習題
程序設(shè)計課程的學(xué)習重在上機實踐環(huán)節(jié),為了確保學(xué)生有足夠的上機實踐時長,課程組借助于PTA平臺[4]發(fā)布了57道同步練習題,學(xué)生在每次授課結(jié)束通過實操這些題目來檢驗對知識點的掌握程度。PTA是由浙江大學(xué)主導(dǎo),杭州百騰教育科技有限公司管理運營,全國高校教師共同建設(shè)的程序設(shè)計類課程的輔助教學(xué)平臺[5]。如圖1所示,在PTA平臺上教師可以建立并分享自己的題目集、創(chuàng)建自己的班級、布置作業(yè)、統(tǒng)計成績并進行數(shù)據(jù)分析等。
學(xué)生通過平臺完成作業(yè),提交代碼,平臺自動完成批改,并生成相關(guān)的統(tǒng)計數(shù)據(jù),學(xué)生可以實時看到自己在班級中的排名情況,在動手實踐的過程中形成一種“你追我趕”的學(xué)習氛圍,如圖2所示。
3.3.4 做好答疑及引導(dǎo)
通過建立線上QQ群,及時解決學(xué)生學(xué)習過程中遇到的問題。首先,教師要堅持“授之以漁”的思想,避免“就題論題”。在問題的解答過程中應(yīng)注重培養(yǎng)學(xué)生借助于互聯(lián)網(wǎng)手段自主解決問題的能力,教師給予學(xué)生的是一種普適性的解決同類問題的手段或方法,而不要局限于學(xué)生提出的問題本身。
其次,要引導(dǎo)學(xué)生“互幫互助”,在班級內(nèi)部解決問題。教師要引導(dǎo)學(xué)生把遇到的問題用簡潔準確的語言在QQ群中進行描述,然后配以問題截圖,讓同學(xué)們一起思考問題的解決辦法。在這個過程中,可能有的同學(xué)也遇到了類似問題并已解決,就可以直接給出解決方案。這種方式不僅可以有效降低教師答疑的工作量,也有助于培養(yǎng)了學(xué)生的語言組織和表達能力。
此外,答疑環(huán)節(jié)可以請高年級的學(xué)習成績較好的學(xué)生入群做助教,協(xié)助老師解答問題。教師要做到及時查看學(xué)生問題是否得到解決,一定不能出現(xiàn)長期無答復(fù)的情況,避免挫傷學(xué)生的前置性學(xué)習積極性。
4 實踐效果及分析
經(jīng)過近20天的前置性學(xué)習,學(xué)生入校后組織進行了一次摸底測驗,主要用于檢驗學(xué)生在假期學(xué)習的成果。本次測驗借助于PTA平臺發(fā)布,要求在40分鐘內(nèi)完成4道編程題,涵蓋程序設(shè)計中數(shù)字類型及表達式應(yīng)用、分支語句及循環(huán)語句的使用等知識點(如圖3 所示),參與測評學(xué)生總計129人。
從總體考試成績分布情況可以看出(如圖4 所示):(1)11位同學(xué)在有限時間內(nèi)拿到了滿分;(2)有近20%同學(xué)得分在[80,100)分之間,至少做對了3道題;(3)過半數(shù)的學(xué)生(69人)成績在[50,80)分之間,至少完成了2道題;(4)存在少部分同學(xué)(26人)得分小于50分,其中有20個同學(xué)得分大于20分(完成了1道題),有6個同學(xué)得0分。
學(xué)生入校后,經(jīng)調(diào)研6名得0分的同學(xué)在接到通知書后,始終沒有加入班級QQ群,未得到提前學(xué)習的信息,因此在報到前沒能正常開展“前置性學(xué)習”,加上高中階段也沒有接觸過程序設(shè)計課程的學(xué)習或培訓(xùn),對C語言編程一無所知,無法完成測試題目。11 位得滿分的同學(xué),除了按時參與了假期幾次線上課程的學(xué)習外,還及時完成了57道同步作業(yè),全部通過系統(tǒng)檢測。
從成績分布可以看出,前置性學(xué)習在培養(yǎng)學(xué)生基礎(chǔ)編程能力方面取得了不錯的效果。在沒有正式授課之前能夠通過短時間的學(xué)習,完成2道及以上的題目的學(xué)生比例高達80%,說明學(xué)生已經(jīng)跨過了程序設(shè)計入門階段的“黑暗時刻”,具備了初級的編程思維能力。
5 結(jié)束語
實驗表明,大一新生自拿到錄取通知書到正式報到這段時間屬于是一個完全放飛自我的短暫時期(差不多有近1個月的時間),利用這段時間讓學(xué)生集中精力學(xué)習一門大學(xué)階段的基礎(chǔ)編程課程是完全可行的,并且是高效的。
本文詳細介紹了計算機相關(guān)專業(yè)借助于前置性學(xué)習方法,利用短暫的20天時間引導(dǎo)學(xué)生積極開展程序設(shè)計基礎(chǔ)課程的前置學(xué)習,并配以同步的練習題目,可以有效提升學(xué)生的編程思維能力,同時也解決了程序設(shè)計基礎(chǔ)課程開課學(xué)時嚴重不足的問題。學(xué)生入校后,已經(jīng)進行過前置性學(xué)習的內(nèi)容就可以加快授課進度,為后續(xù)的內(nèi)容預(yù)留出更多的教學(xué)時間。