常燕 劉嘉敏 朱世鐵 于霞
摘要:程序設(shè)計實踐課程是高校計算機(jī)學(xué)科部分相關(guān)專業(yè)的必修課程之一,該課程對于高校學(xué)生的邏輯思維能力和動手實踐操作能力要求較高。然而,在高校程序設(shè)計實踐課程中學(xué)生對待課程的“畏難”心理、學(xué)校對于程序設(shè)計實踐的重視度不夠、高校教師考核方式的不科學(xué)等都是阻礙高校學(xué)生編程能力提高的障礙。結(jié)合時代發(fā)展及我國教育信息化規(guī)劃,本文提出以項目教學(xué)為驅(qū)動的程序設(shè)計實踐課程的“翻轉(zhuǎn)課堂”+SPOC教學(xué)模式。根據(jù)項目驅(qū)動教學(xué)特點,基于“翻轉(zhuǎn)課堂”+SPOC的網(wǎng)絡(luò)在線教學(xué)平臺,筆者結(jié)合具體Java教學(xué)實例從課前準(zhǔn)備、課中教學(xué)和課后評價三個方面對程序設(shè)計實踐課程展開了教學(xué)研究,為高校計算機(jī)程序設(shè)計實踐課程提供一定的參考。
關(guān)鍵詞:項目驅(qū)動;翻轉(zhuǎn)課堂;計算思維;SPOC
中圖分類號:G642.4 文獻(xiàn)標(biāo)志碼:A 文章編號:1674-9324(2019)01-0157-03
根據(jù)2011年《教育信息化十年發(fā)展規(guī)劃》中所提出的理念,我國教育要在改革過程中實現(xiàn)信息化元素的介入,全面推進(jìn)信息技術(shù)與教育之間的有效結(jié)合。
近幾年來,為了積極響應(yīng)國家的號召,不少高校加強(qiáng)對程序設(shè)計實現(xiàn)課堂的教育教學(xué)改革,本文以Java程序設(shè)計課程實踐環(huán)節(jié)展開教學(xué)研究。
一、高校程序設(shè)計實踐課堂教學(xué)現(xiàn)狀分析
1.學(xué)生存在“畏難”心理。計算機(jī)程序語言和人類語言的邏輯差別是比較大的。我國現(xiàn)如今大的教育背景致使大部分高校生在大學(xué)期間才初次接觸程序設(shè)計課程,調(diào)查顯示,有相當(dāng)一部分大學(xué)生對程序設(shè)計課程存在“畏難”心理。程序設(shè)計課程對學(xué)生邏輯分析能力要求較高,剛剛接觸的學(xué)生常常找不到頭緒,不知道怎么學(xué)習(xí)計算機(jī)程序編寫。部分程序代碼的編寫過程是十分枯燥的,往往不起眼的小失誤,如變量名稱的前后不一致、標(biāo)點符號使用不恰當(dāng)?shù)榷紩?dǎo)致整個程序無法正常運(yùn)行,這對學(xué)生樹立學(xué)習(xí)的信心是非常不利的。
2.程序設(shè)計課程對實踐教學(xué)重視度不夠。程序設(shè)計課堂培養(yǎng)學(xué)生的計算機(jī)思維能力固然很重要,但實踐教學(xué)也是絕不可忽視的。很多高校在對計算機(jī)編程課進(jìn)行教學(xué)安排的時候犯了一些指向性錯誤,沒有考慮到理論與實踐教學(xué)之間的緊密聯(lián)系,制定教學(xué)計劃的時候?qū)⒗碚摻虒W(xué)與實踐教學(xué)分別安排給不同的教師。這種分離式的教學(xué)模式使得程序課程的實踐教學(xué)質(zhì)量不能得到保證。
所謂的程序設(shè)計實踐課程教學(xué)無非就是根據(jù)制定教材的例題或是與教材配套的上機(jī)指導(dǎo)實驗書作為實踐教學(xué)的主要內(nèi)容。這樣的實踐教學(xué)不能切實培養(yǎng)學(xué)生的計算機(jī)思維和實際動手能力,教師可控性太差,目的性不強(qiáng)。實踐教學(xué)重視度的缺失是制約高校程序設(shè)計課堂進(jìn)步的一個重要因素。
3.課程考核方式不科學(xué)。程序設(shè)計實踐課堂對學(xué)生實踐能力要求很高,其最大的特點就是“靈活性”,教學(xué)內(nèi)容的靈活和學(xué)生編程方式的靈活性都對課程考核方式提出了很高的要求。不同于傳統(tǒng)的學(xué)科,以所掌握知識的書面呈現(xiàn)作為期末考核形式,程序設(shè)計實踐課判斷學(xué)生是否達(dá)到課程考核要求的判斷標(biāo)準(zhǔn)為是否對所學(xué)知識點靈活操作,而且程序能否成功調(diào)試運(yùn)行完成。不少程序設(shè)計實踐課的教學(xué)導(dǎo)師并未在實際行動中貫徹實施這一考核標(biāo)準(zhǔn),書面考核方式往往導(dǎo)致學(xué)生為達(dá)考核要求而死記硬背現(xiàn)象的產(chǎn)生。
二、項目驅(qū)動和“翻轉(zhuǎn)課堂”+SPOC概述
1.項目驅(qū)動教學(xué)。提高學(xué)生編寫程序的能力是開展程序設(shè)計實踐課程的目的,也是開設(shè)程序設(shè)計實踐課程最根本的宗旨,將引導(dǎo)學(xué)生熟練進(jìn)行編程項目開發(fā)作為教學(xué)目標(biāo),幫助學(xué)生提高面向?qū)ο筮M(jìn)行分析的基本技能。此外,程序設(shè)計實踐課程還可以幫助學(xué)生掌握項目驅(qū)動并建立整體架構(gòu)的開發(fā)能力。
單純代碼的編寫和代碼實現(xiàn)的小技巧只是作為一名合格IT編程人員的基本素養(yǎng),大信息時代下要求程序設(shè)計人員必須懂得整體架構(gòu)、以“項目驅(qū)動”為起點展開對問題的分析。所謂“項目驅(qū)動”教學(xué)即以學(xué)生為主體,以項目完成為起點和動力展開對高校程序設(shè)計學(xué)生的教學(xué),其不同于傳統(tǒng)的任務(wù)教學(xué)法,而是注重培養(yǎng)學(xué)生完成實際實際項目的動手能力[1]。在以項目為驅(qū)動的程序設(shè)計實踐課程教學(xué)過程中,為了讓學(xué)生對編程基本知識點有更深刻的理解和把握,高校教師應(yīng)結(jié)合當(dāng)今在具體應(yīng)用中使用較多的主流技術(shù),并結(jié)合高校學(xué)生身邊的具體場景,給出學(xué)生能夠感興趣并能真真實實學(xué)到技術(shù)的應(yīng)用項目,并分析項目重點、難點,演示項目的最終呈現(xiàn)效果及實際價值,激發(fā)學(xué)生對程序設(shè)計實踐課程的學(xué)習(xí)興趣和求知欲。項目驅(qū)動教學(xué)給了學(xué)生一個教學(xué)目標(biāo),從而以此為目標(biāo)提升課堂教學(xué)和學(xué)生自主學(xué)習(xí)效果,大大提升學(xué)生對Java程序設(shè)計過程中理論知識的理解和將理論應(yīng)用于實際項目中解決分析問題的能力[2]。
2.“翻轉(zhuǎn)課堂”+SPOC。當(dāng)前SPOC(Small Private Online Course,小規(guī)模限制性在線課程)的大多數(shù)教學(xué)案例主要是針對圍墻內(nèi)的大學(xué)生和在校大學(xué)生這兩類學(xué)生設(shè)置的[3]。以圍墻內(nèi)的大學(xué)生為教學(xué)藍(lán)本的SPOC教學(xué)案例是整合課堂教學(xué)與在校教學(xué)兩種教學(xué)方式的新型融合性教學(xué)方法,學(xué)生在大學(xué)課堂上采用MOOC(massive open online courses,大型開放式網(wǎng)絡(luò)課程)的講座視頻及其包含的在線測試、在線評價等功能性模塊,實現(xiàn)“翻轉(zhuǎn)課堂”教學(xué)?!胺D(zhuǎn)課堂”(the Flipped Classroom/the Inverted Classroom)指的是學(xué)生可在課外通過教學(xué)視頻實現(xiàn)自主學(xué)習(xí),課上與教師、同學(xué)積極溝通實現(xiàn)更好學(xué)習(xí)的一種學(xué)習(xí)方法。不少高校針對計算機(jī)程序設(shè)計實踐課程展開“翻轉(zhuǎn)課堂”+SPOC的教學(xué)模式,學(xué)生可以在線學(xué)習(xí)的方式接觸到國內(nèi)外高校一流的程序設(shè)計課程,同時師生之間、學(xué)生之間也可通過溝通實現(xiàn)優(yōu)質(zhì)教學(xué)資源共享,提高高校實踐教學(xué)水平。與傳統(tǒng)教學(xué)模式不同的地方在于,“翻轉(zhuǎn)課堂”+SPOC程序設(shè)計實踐課程的教學(xué)內(nèi)容質(zhì)量較高,同步、異步的教學(xué)模式選擇靈活[4],不僅能夠體現(xiàn)出在校開放課程的獨到之處,還可以將傳統(tǒng)課堂教學(xué)模式中存在的不足進(jìn)行充分的彌補(bǔ)。新型教學(xué)模式的優(yōu)點不僅融合了實踐信息技術(shù)和傳統(tǒng)教學(xué)的可取之處,還將教師與學(xué)生之間的角色轉(zhuǎn)換為學(xué)生為主的狀態(tài),充分迎合了以學(xué)生為教育過程主體的核心教育理念。
但“翻轉(zhuǎn)課堂”+SPOC在實際應(yīng)用于高校程序設(shè)計實踐課程的教學(xué)過程中時是存在一些問題的。首先,高校學(xué)生對計算機(jī)編程認(rèn)知有限,其知識層次及學(xué)習(xí)能力存在差異,在接受部門高質(zhì)量教學(xué)視頻時會存在吃力現(xiàn)象。其次,計算機(jī)編程設(shè)計實踐課堂對學(xué)生動手實現(xiàn)能力要求較高,大部門教學(xué)視頻更側(cè)重于編程理論、編程方法的講解,高質(zhì)量的實踐課程相對較少。計算機(jī)程序設(shè)計實踐課程的教學(xué)機(jī)制是高校學(xué)生整體編程能力難以提升的重大制約因素,不完善的教學(xué)機(jī)制注定不能培養(yǎng)出能力出眾的計算機(jī)程序設(shè)計人才,為此在實踐教學(xué)過程中,應(yīng)針對具體學(xué)科特點,對“翻轉(zhuǎn)課堂”+SPOC教學(xué)模式進(jìn)行修正、完善。
三、項目驅(qū)動的程序設(shè)計實踐課程的“翻轉(zhuǎn)課堂”+SPOC教學(xué)模式研究
高校計算機(jī)Java程序設(shè)計實踐課程的開展需要根據(jù)其教學(xué)內(nèi)容的特點合理制定教學(xué)方法,項目驅(qū)動教學(xué)和“翻轉(zhuǎn)課堂”+SPOC教學(xué)模式非常適用于這門課程的教學(xué)。本文在考慮到課程本身特點的前提下提出這一教學(xué)模式,目的是為了解決學(xué)生在實際動手進(jìn)行程序設(shè)計過程中表現(xiàn)出來的實踐能力不足的問題。為了更好地提高高校學(xué)生對程序設(shè)計課程的學(xué)習(xí)興趣,消除學(xué)生“畏難”情緒,在根源上提高高校對程序設(shè)計實踐課程的重視程度,本文對項目驅(qū)動的程序設(shè)計實踐課程的“翻轉(zhuǎn)課堂”+SPOC這一教學(xué)模型進(jìn)行了深入的研究,分析這種教學(xué)模式在程序設(shè)計實踐課程中的適用性,主要通過課前、課中、課后三個模塊闡述教學(xué)模式與課程之間的結(jié)合。
1.課前準(zhǔn)備階段。要想提高高校學(xué)生對Java程序設(shè)計課程的興趣,課前教學(xué)準(zhǔn)備階段是十分重要的[5]。首先,教師應(yīng)結(jié)合Java編程語言的特點,考慮學(xué)生的認(rèn)知水平準(zhǔn)備好合適的項目,并根據(jù)不同的教學(xué)階段將項目進(jìn)行合理劃分為幾個子項目。為了激發(fā)學(xué)生的學(xué)習(xí)興趣,教師應(yīng)根據(jù)各個子項目的側(cè)重點,準(zhǔn)備與知識點相對應(yīng)的課堂導(dǎo)入、備課環(huán)節(jié)及測試點,將整個教學(xué)內(nèi)容制作成“微視頻”或者以幻燈片的形式掛在本班學(xué)生經(jīng)常觀看的Java程序設(shè)計課程的在線網(wǎng)絡(luò)教學(xué)多媒體平臺上。此外,教師還應(yīng)在課前準(zhǔn)備階段設(shè)計好實踐課程的每一個教學(xué)活動,對每個子項目的教學(xué)過程設(shè)計出具體的教學(xué)步驟。根據(jù)教師給設(shè)定的具體程序設(shè)計項目,學(xué)生可在基于“翻轉(zhuǎn)課堂”+SPOC的多媒體平臺上自主學(xué)習(xí)教師發(fā)布的數(shù)字化課程資源,在課前預(yù)習(xí)階段對所學(xué)知識點做到大致了解或掌握。
如教師給出“網(wǎng)站下載器”一個具體的項目,要求主要以Java程序設(shè)計語言(結(jié)合項目的具體要求,也可少量搭配Web開發(fā)自行選擇其他程序設(shè)計語言)實現(xiàn)以下幾項功能:以圖形界面為展現(xiàn)媒介,用程序?qū)崿F(xiàn)網(wǎng)絡(luò)數(shù)據(jù)的發(fā)送請求以實現(xiàn)所需圖片的下載過程;對于需要個人注冊、登錄的網(wǎng)站進(jìn)行有效模擬;運(yùn)用多線程同時完成對該網(wǎng)站多張圖片的下載過程;結(jié)合實際需求對某些圖片實現(xiàn)加密并定向保存到前期制定文件夾。單純給定“網(wǎng)站下載器”項目可能會使學(xué)生找不到頭緒,教師將這個綜合類的大項目在課前根據(jù)所實現(xiàn)的功能以分類的形式進(jìn)行子項目劃分,學(xué)生利用課堂上所學(xué)到的基礎(chǔ)知識完成設(shè)計難度較低的所有子項目,進(jìn)而達(dá)到整個項目合理完成的目標(biāo),只要對每個子項目的設(shè)計做到全部掌握,那么整個項目的設(shè)計也可以順利完成。教師除了完成子項目的劃分,還應(yīng)給學(xué)生提出問題,激發(fā)學(xué)生的興趣[6]。第一項功能中涉及“圖片文件搜索”的程序?qū)崿F(xiàn),教師可在相應(yīng)的教學(xué)環(huán)節(jié)給出學(xué)生思考問題:(1)文件和目錄應(yīng)以何種方式進(jìn)行區(qū)分;(2)怎樣實現(xiàn)文件夾和子文件夾的搜索過程;(3)計算機(jī)應(yīng)怎樣完成搜索條件下的篩選工作等問題。
2.課中教學(xué)階段。由于在前期在網(wǎng)絡(luò)平臺完成了自主預(yù)習(xí)、學(xué)習(xí)過程,在教學(xué)過程中,一旦學(xué)生對某個具體功能的實現(xiàn)和某些代碼存在疑惑,可隨時向教師舉手請教。針對個別問題,學(xué)生可在學(xué)生計算機(jī)上實時指導(dǎo)功能實現(xiàn),針對疑惑較為集中的部分,教師可在課堂組織集體答疑,在機(jī)房實時實地演示學(xué)生困惑的地方,這樣學(xué)生便可集中注意力參與整個教學(xué)過程,提高學(xué)生的積極性。在教學(xué)過程中,教師還可通過問題引導(dǎo)、項目驅(qū)動、實現(xiàn)路徑分解、代碼編寫及調(diào)動的方式進(jìn)行示例講解,給學(xué)生演示出子項目具體功能的實現(xiàn)[7]。
在課堂上,教師可將學(xué)生分為不同的學(xué)習(xí)小組,小組成員不能過多,必須使每位學(xué)生有單獨負(fù)責(zé)的部分,以項目驗收的具體要求評定學(xué)生是否達(dá)到本節(jié)課堂的教學(xué)目標(biāo)。首先,教師可隨機(jī)抽查小組進(jìn)行項目實現(xiàn)效果演示,并根據(jù)演示過程及結(jié)果向小組內(nèi)學(xué)生提問,檢查代碼的書寫是否規(guī)范、演示的功能是否完善、界面顯示信息是否符合呈現(xiàn)要求等多種考核標(biāo)準(zhǔn);其次,不同小組間也可實現(xiàn)有效溝通,針對不懂的問題向教師請教,做到取長補(bǔ)短;最后教師可根據(jù)項目實現(xiàn)的具體功能,對學(xué)生完成的功能予以評價,鼓勵學(xué)生繼續(xù)努力以實現(xiàn)更大的進(jìn)步。
3.課后評價階段。課前與課中兩個環(huán)節(jié)的教學(xué)效果如何及時反饋到教師手里是十分關(guān)鍵的,在課后階段的教學(xué)環(huán)節(jié)中學(xué)生可以利用所學(xué)程序設(shè)計知識制作一個多媒體網(wǎng)絡(luò)平臺。在網(wǎng)絡(luò)平臺上學(xué)生可以將學(xué)習(xí)成果以及遇到的阻礙通過在線上傳的方式反饋給教師,學(xué)生自主發(fā)現(xiàn)問題并在教師的引導(dǎo)下解決問題是這種教學(xué)模式的鮮明特點,線上與線下能夠?qū)崿F(xiàn)最大程度的緊密結(jié)合。通過Java程序設(shè)計實踐多媒體教學(xué)平臺,每個小組還可將課堂上完成的作品進(jìn)行在線上傳,供教師和其他小組完成傳閱。教師可在課下實現(xiàn)對課堂上沒有展示的小組作品進(jìn)行考核評價,學(xué)生也可在網(wǎng)絡(luò)平臺完成相互溝通、學(xué)習(xí)[8]。傳統(tǒng)的教學(xué)模式下,學(xué)生的溝通受時間、空間限制,“翻轉(zhuǎn)課堂”+SPOC的教學(xué)模式給教師和學(xué)生提供了方便、快捷的溝通平臺。通過積極溝通,學(xué)生可認(rèn)真分析每個子項目存在的問題,對整個項目功能的實現(xiàn)打下了良好的基礎(chǔ)。課后評價環(huán)節(jié)的意義在于幫助學(xué)生找到自己在程序設(shè)計實際操作中的不足之處,遇到的學(xué)術(shù)方面的阻礙能夠得到正確的引導(dǎo)和及時的解決。通過整合學(xué)生反饋給教師的信息,教師可以針對性地加強(qiáng)該方面理論知識和實際操作的教學(xué),以項目為驅(qū)動順利完成程序設(shè)計的教學(xué)過程,從而大大提高學(xué)生在計算機(jī)方面的邏輯思維能力和動手操作能力。
四、結(jié)語
信息化進(jìn)程的不斷推進(jìn)要求高校輸送更多計算機(jī)程序設(shè)計方面的人才,解決了學(xué)習(xí)計算機(jī)程序設(shè)計的學(xué)生的就業(yè)壓力問題。計算機(jī)程序設(shè)計注重對學(xué)生“理論+實踐”雙重能力的培養(yǎng),相比之下,后者尤為重要。項目驅(qū)動的程序設(shè)計實踐課程的“翻轉(zhuǎn)課堂”+SPOC教學(xué)模式為高校計算機(jī)程序設(shè)計課程的教學(xué)注入了新的活力。
參考文獻(xiàn):
[1]程珍,池凱凱,李燕君,徐利鋒.項目驅(qū)動和翻轉(zhuǎn)課堂相融合的教學(xué)模式在Java程序設(shè)計教學(xué)中的應(yīng)用[J].計算機(jī)教育,2018,(02):91-94+99.
[2]常燕,李丙紅,劉嘉敏.在Java程序設(shè)計教學(xué)中任務(wù)驅(qū)動法對計算思維能力培養(yǎng)的探索與實踐[J].教育現(xiàn)代化,2017,4(43):159-161.
[3]劉嘉敏,常燕,黃靜,李丙紅.基于計算思維的程序設(shè)計課程教學(xué)改革[J].教育現(xiàn)代化,2017,4(39):43-45+47.
[4]夏愛月.項目教學(xué)法在程序設(shè)計教學(xué)中的應(yīng)用[J].中國教育技術(shù)裝備,2017,(05):91-92.
[5]吳德.基于SPOC的在線課程教學(xué)模式設(shè)計初探——以《Java程序設(shè)計》為例[J].電子世界,2016,(24):57+60.
[6]曹菡,裴艷,王長纓.基于翻轉(zhuǎn)課堂教學(xué)模式的大學(xué)生計算思維能力的培養(yǎng)研究[J].中國醫(yī)學(xué)教育技術(shù),2015,29(05):494-497.
[7]李凌霞,郭川軍,王曉.應(yīng)用型本科院校計算機(jī)專業(yè)“慕課+翻轉(zhuǎn)課堂”教學(xué)模式研究——以《Java程序設(shè)計》課程為例[J].黑龍江教育(理論與實踐),2017,(11):46-47.
[8]戴振中,葉曉彤.基于“多微驅(qū)動”的SPOC混合教學(xué)模式的研究與實踐——以《面向?qū)ο蟪绦蛟O(shè)計》為例[J].教育教學(xué)論壇,2017,(28):133-134.