章蓬偉 賈鈺峰 邵小青 劉生智
(新疆科技學(xué)院信息科學(xué)與工程學(xué)院,新疆 庫爾勒 841000)
Python程序設(shè)計(jì)課程是大學(xué)計(jì)算機(jī)類專業(yè)課,其目的是培養(yǎng)學(xué)生在信息化社會(huì)所必需的信息素養(yǎng),及運(yùn)用信息化技術(shù)解決生產(chǎn)生活實(shí)際問題的能力。計(jì)算機(jī)信息素養(yǎng)日益成為創(chuàng)新能力不可或缺的部分。在信息技術(shù)日新月異、爆炸式發(fā)展的今天,傳統(tǒng)的Python程序設(shè)計(jì)課程重在計(jì)算機(jī)軟件或工具介紹、教授學(xué)生零散的計(jì)算機(jī)編程知識(shí),難以幫助學(xué)生提升創(chuàng)新能力,無法有效支持計(jì)算機(jī)類專業(yè)建設(shè),更無法滿足未來大數(shù)據(jù)時(shí)代各領(lǐng)域?qū)σ杂?jì)算能力為支撐的復(fù)合型創(chuàng)新人才的需求。因此,以能力培養(yǎng)為導(dǎo)向,確定本課程的培養(yǎng)目標(biāo)是“培養(yǎng)學(xué)生的計(jì)算思維,以項(xiàng)目驅(qū)動(dòng)教學(xué),拓寬學(xué)生的知識(shí)面,使之掌握基本編程操作技能,提高應(yīng)用能力和創(chuàng)新能力”。
Python程序設(shè)計(jì)是計(jì)算機(jī)類相關(guān)專業(yè)的專業(yè)課程,和C語言、Java相比,Python的優(yōu)勢(shì)明顯。Python是一種免費(fèi)、開源、解釋型的面向?qū)ο蟮母呒?jí)動(dòng)態(tài)編程語言。Python語言目前是最接近人類思維的編程語言,可以應(yīng)用于數(shù)據(jù)分析與統(tǒng)計(jì)、人工智能、Web開發(fā)、云計(jì)算等,能方便進(jìn)行系統(tǒng)維護(hù)與管理,是最受歡迎的編程語言之一。在人工智能領(lǐng)域中機(jī)器學(xué)習(xí)、深度學(xué)習(xí)等方面Python應(yīng)用廣泛,是人工智能領(lǐng)域最火的計(jì)算機(jī)編程語言。
以培養(yǎng)學(xué)生分析問題能力為中心,通過工程實(shí)踐項(xiàng)目展開教學(xué)改革真正提高學(xué)生運(yùn)用計(jì)算機(jī)分析、解決問題的能力,是高校教師亟須解決的問題。Python程序設(shè)計(jì)是新疆科技學(xué)院面向計(jì)算機(jī)專業(yè)一年級(jí)開設(shè)的必修課,總學(xué)時(shí)36,理論學(xué)時(shí)18,實(shí)踐學(xué)時(shí)18。
目前的Python程序設(shè)計(jì)教學(xué)仍存在一些不盡如人意的地方,主要有以下幾方面:學(xué)生編程水平差異化嚴(yán)重,學(xué)生來自全國五湖四海,對(duì)Python程序設(shè)計(jì)學(xué)習(xí)的興趣兩極分化,計(jì)算機(jī)和編程水平參差不齊,對(duì)課程實(shí)踐教學(xué)提出了極大的挑戰(zhàn)。強(qiáng)化理論灌輸、弱化能力培養(yǎng)、教學(xué)手段單一在教學(xué)中仍然采用理論講解—學(xué)生操作—課后練習(xí)的傳統(tǒng)教學(xué)模式,強(qiáng)化知識(shí)灌輸,弱化能力培養(yǎng)。沒有有效將課上與課下形成閉環(huán),教學(xué)手段單一,導(dǎo)致學(xué)生實(shí)踐環(huán)節(jié)薄弱,不能有效培養(yǎng)學(xué)生發(fā)現(xiàn)問題、分析問題、解決問題的能力。要轉(zhuǎn)變觀念從重學(xué)輕思向?qū)W思結(jié)合轉(zhuǎn)變。學(xué)生對(duì)程序設(shè)計(jì)課不能機(jī)械地記憶,需要不斷地思考創(chuàng)新,從中獲得學(xué)習(xí)的樂趣和成就感。
實(shí)踐教學(xué)環(huán)節(jié)流于形式,加之學(xué)生程序設(shè)計(jì)的基本功不扎實(shí),久而久之對(duì)學(xué)習(xí)編程和思考問題失去興趣。從教學(xué)的角度來看,傳統(tǒng)的教育觀念不是“以學(xué)生為中心”而是“以知識(shí)為中心”,這種方法表現(xiàn)為:教師無所不知,是不變真理的化身,學(xué)生一無所知,只能等待教師的“施舍”,被動(dòng)地接受知識(shí)。灌輸式教學(xué)極不利于“以學(xué)生為中心”的成長和發(fā)展,灌輸?shù)闹R(shí)越多,學(xué)生越缺乏批判意識(shí)、主體精神和創(chuàng)造性的品質(zhì),不利于學(xué)生創(chuàng)新能力培養(yǎng)的教學(xué)方式。面對(duì)這些問題,課程組經(jīng)過一年多的教學(xué)反思與總結(jié),對(duì)Python程序設(shè)計(jì)進(jìn)行了有效的改革,使Python程序設(shè)計(jì)課滿足了新時(shí)代對(duì)人才培養(yǎng)的要求。
Python語言具有簡(jiǎn)潔性、易讀性和可擴(kuò)展性,只關(guān)注計(jì)算問題的解決,是進(jìn)化最接近自然語言的編程語言,但傳統(tǒng)程序語言設(shè)計(jì)都是以教師為中心,學(xué)生被動(dòng)地接受編程知識(shí),并沒有和教師同頻共振,學(xué)生實(shí)踐環(huán)節(jié)不夠,課程理論與實(shí)踐的結(jié)合不夠緊密,學(xué)生缺乏主動(dòng)性等。針對(duì)以上問題,經(jīng)過一年的改革與實(shí)踐,本文對(duì)教學(xué)改革進(jìn)行了歸納總結(jié)。
本教學(xué)模式以項(xiàng)目驅(qū)動(dòng)教學(xué)法為主導(dǎo),以計(jì)算思維為切入點(diǎn),用項(xiàng)目將師生的教與學(xué)活動(dòng)串聯(lián)起來,項(xiàng)目實(shí)施完成的過程就是整個(gè)教學(xué)過程。模式主要由教師、學(xué)生兩個(gè)主體,項(xiàng)目設(shè)計(jì)、項(xiàng)目分析、項(xiàng)目實(shí)施、總結(jié)評(píng)價(jià)五個(gè)教學(xué)流程構(gòu)成,通過項(xiàng)目串聯(lián)起來組織教學(xué)。具體模式構(gòu)建如圖1所示。
圖1 基于計(jì)算思維的項(xiàng)目驅(qū)動(dòng)教學(xué)模式
教學(xué)內(nèi)容逐步的完成過程中,進(jìn)行分段、進(jìn)階式教學(xué)內(nèi)容的設(shè)計(jì)。項(xiàng)目驅(qū)動(dòng)教學(xué)模式是將知識(shí)點(diǎn)貫穿到整個(gè)項(xiàng)目運(yùn)作過程中,掌握Python基礎(chǔ),包括基本數(shù)據(jù)類型、組合數(shù)據(jù)類型、控制結(jié)構(gòu)和文件操作;掌握Python進(jìn)階,能夠應(yīng)用第三方庫解決較復(fù)雜問題。項(xiàng)目完成過程中,學(xué)生也可以提出新的問題進(jìn)行科學(xué)探究和知識(shí)的拓展,真正培養(yǎng)分析、解決問題的能力,進(jìn)而達(dá)到思維能力的培養(yǎng)并切身體會(huì)創(chuàng)新實(shí)踐的樂趣。通過13個(gè)分段進(jìn)階式項(xiàng)目教學(xué)化難為易、科學(xué)系統(tǒng)的培養(yǎng)學(xué)生計(jì)算思維的能力。高級(jí)模塊推薦給學(xué)有余力的學(xué)生,包括NumPy、Pandas和Matplotlib等,具體項(xiàng)目方案如表1所示。
表1 基于計(jì)算思維的項(xiàng)目進(jìn)階教學(xué)內(nèi)容設(shè)計(jì)
MOOC一般指大型開放式網(wǎng)絡(luò)課程,極大豐富了學(xué)生課上課下的理論學(xué)習(xí)與實(shí)踐練習(xí)。Educoder(頭歌)平臺(tái)是學(xué)、練、評(píng)、測(cè)一體化實(shí)驗(yàn)環(huán)境,可以將傳統(tǒng)的知識(shí)傳授和工程實(shí)戰(zhàn)一體化緊密結(jié)合。使用這兩個(gè)平臺(tái)互相配合應(yīng)用到項(xiàng)目驅(qū)動(dòng)教學(xué)的課前、課中和課后3個(gè)環(huán)節(jié)。課前教師通過MOOC布置學(xué)生預(yù)習(xí)任務(wù),根據(jù)學(xué)生預(yù)習(xí)情況的數(shù)據(jù)調(diào)整項(xiàng)目驅(qū)動(dòng)教學(xué)的內(nèi)容。以教學(xué)大綱為依據(jù)為學(xué)生推薦兩門MOOC資源,學(xué)生可以在課前預(yù)習(xí)、課后復(fù)習(xí)。課中教師通過項(xiàng)目驅(qū)動(dòng)使學(xué)生做中學(xué),項(xiàng)目完成過程中,真正培養(yǎng)分析、解決問題的能力,進(jìn)而達(dá)到思維能力的培養(yǎng)并切身體會(huì)創(chuàng)新實(shí)踐的樂趣。通過頭歌平臺(tái)布置課后實(shí)訓(xùn)作業(yè)。頭歌平臺(tái)上有實(shí)踐課程、實(shí)踐項(xiàng)目、課題教學(xué)、案例教學(xué)等模塊,有豐富優(yōu)質(zhì)的教學(xué)內(nèi)容和實(shí)踐項(xiàng)目。如國防科技大學(xué)開設(shè)的“大學(xué)計(jì)算——基于Python的計(jì)算思維與工程實(shí)踐能力訓(xùn)練”課程,學(xué)生做題前可以通過任務(wù)要求復(fù)習(xí)一遍相關(guān)知識(shí),通過任務(wù)驅(qū)動(dòng)通關(guān)式的程序上機(jī)實(shí)踐。如果過關(guān)會(huì)有相應(yīng)金幣的獎(jiǎng)勵(lì),則提高了學(xué)生學(xué)習(xí)的主動(dòng)性和趣味性。課后教師可以通過平臺(tái)數(shù)據(jù)分析,針對(duì)學(xué)生不同階段的學(xué)習(xí)效果,局部調(diào)整項(xiàng)目驅(qū)動(dòng)教學(xué)內(nèi)容,對(duì)學(xué)生反饋的難點(diǎn)進(jìn)行針對(duì)性的教輔。
傳統(tǒng)應(yīng)試教育單憑期末一次性成績內(nèi)容來決定學(xué)生的成績,忽視學(xué)習(xí)過程,不利于綜合素質(zhì)的提高。過程性考核通過學(xué)生的學(xué)習(xí)情況和階段性學(xué)習(xí)效果,全面考核學(xué)生的學(xué)習(xí)能力、運(yùn)用能力及創(chuàng)新能力。課程考核采用多元評(píng)價(jià)體系,最終成績由課前(10%)+課中(45%)+課后(45%)組成。具體標(biāo)準(zhǔn)如表2所示,其中大作業(yè)項(xiàng)目階段考核以小組形式答辯,綜合小組成員自評(píng)和對(duì)小組成員提問表現(xiàn)。按照一個(gè)班級(jí)45人的標(biāo)準(zhǔn),根據(jù)學(xué)生的特長進(jìn)行團(tuán)隊(duì)劃分。將學(xué)生分成6~7個(gè)團(tuán)隊(duì),每個(gè)團(tuán)隊(duì)在7~8人,然后推薦一名隊(duì)長。根據(jù)學(xué)生在分組答辯階段性大作業(yè)系統(tǒng)設(shè)計(jì)中的貢獻(xiàn)率和Python語言掌握情況給予客觀的綜合成績。這樣既考核學(xué)生的理論知識(shí)又考察培養(yǎng)其思維能力,并且將考核貫穿整個(gè)學(xué)期,促進(jìn)了學(xué)生自主學(xué)習(xí),提高了計(jì)算思維的能力。課后階段性PTA測(cè)試能檢測(cè)學(xué)生對(duì)Python編程語言的掌握情況。學(xué)生學(xué)習(xí)成果的評(píng)價(jià)方式,不能再是以最終成績一刀切來決定,要明確學(xué)習(xí)成果的類型,強(qiáng)調(diào)多元過程性考評(píng),通過這種考核方案有助于進(jìn)一步提高學(xué)生學(xué)習(xí)的積極性,激發(fā)創(chuàng)新熱情,全面提升教學(xué)質(zhì)量。
表2 課程考核采用多元評(píng)價(jià)過程性考核體系
本文根據(jù)Python語言的特點(diǎn),提出了Python編程與實(shí)踐課程教學(xué)模式,采用以學(xué)生為主體、教師為主導(dǎo),以計(jì)算思維為切入點(diǎn)項(xiàng)目驅(qū)動(dòng)式教學(xué)、因材施教多級(jí)任務(wù)規(guī)劃的衍生進(jìn)階教學(xué)、采用多元評(píng)價(jià)過程性考核體系線上線下混合教學(xué)模式。不僅激發(fā)了學(xué)生的學(xué)習(xí)興趣,同時(shí)提高了學(xué)生發(fā)現(xiàn)問題、解決問題和創(chuàng)新的能力,為高質(zhì)量的人才培養(yǎng)探索提供了有效的解決途徑。