童端 呂捷 劉凌波
摘 ? 要:在CDIO教育理念的指導(dǎo)下,通過(guò)分析傳統(tǒng)的程序設(shè)計(jì)基礎(chǔ)課程教學(xué)中的不足,針對(duì)學(xué)生的被動(dòng)學(xué)習(xí)、實(shí)驗(yàn)操作能力弱、課程實(shí)驗(yàn)與企業(yè)實(shí)際所需人才要求相脫節(jié)的情況,提出和實(shí)施了以真實(shí)項(xiàng)目設(shè)計(jì)為核心、創(chuàng)新和個(gè)性化教育為主的教學(xué)改革方案和多元化的考核方式,培養(yǎng)了學(xué)生的團(tuán)隊(duì)能力和團(tuán)隊(duì)精神,大幅提升了學(xué)生的學(xué)習(xí)興趣和自主學(xué)習(xí)能力。
關(guān)鍵詞:程序設(shè)計(jì)基礎(chǔ) ?基于項(xiàng)目的教育和學(xué)習(xí) ?蔡勒公式 ?創(chuàng)新和個(gè)性化教育
中圖分類號(hào):G712 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A ? ? ? ? ? ? ? ? ? ? ? ?文章編號(hào):1674-098X(2019)08(a)-0214-03
1 ?現(xiàn)狀與背景分析
現(xiàn)有的《程序設(shè)計(jì)基礎(chǔ)》課程的教學(xué)內(nèi)容包括理論教學(xué)和是實(shí)驗(yàn)教學(xué)。一般采用“理論學(xué)習(xí)+課程實(shí)驗(yàn)”的教學(xué)模式,學(xué)生根據(jù)“課后習(xí)題+實(shí)驗(yàn)指導(dǎo)書”的安排進(jìn)行實(shí)驗(yàn)。這種傳統(tǒng)的教學(xué)模式中學(xué)生大都比較被動(dòng)[1],存在如下不足:
(1)理論教學(xué)時(shí)學(xué)生覺得教師的講解枯燥無(wú)味,因而學(xué)習(xí)興趣不夠濃厚,導(dǎo)致學(xué)生進(jìn)行實(shí)驗(yàn)操作時(shí)的手足無(wú)措和無(wú)從下手,進(jìn)而導(dǎo)致學(xué)生解決實(shí)際問(wèn)題的能力太弱[2]。
(2)教學(xué)內(nèi)容大多來(lái)源于教材中的實(shí)例,而沒(méi)有來(lái)源于實(shí)際市場(chǎng),因此,存在著課堂教學(xué)內(nèi)容與企業(yè)實(shí)際所需人才要求相脫節(jié)的情況。這種情況導(dǎo)致學(xué)生學(xué)習(xí)目的性不強(qiáng),學(xué)后不能達(dá)到學(xué)以致用的效果,而且實(shí)驗(yàn)的形式也比較單一。
(3)以個(gè)體為中心,學(xué)生獨(dú)自完成程序設(shè)計(jì),忽視了軟件行業(yè)所需的團(tuán)隊(duì)精神的培養(yǎng)。
本文旨在通過(guò)以真實(shí)項(xiàng)目設(shè)計(jì)為核心、創(chuàng)新和個(gè)性化教育為主的課程教學(xué)方法的改革來(lái)解決這些問(wèn)題,從而取得更好的教學(xué)效果。
2 ?教學(xué)改革方式和策略
2.1 以真實(shí)項(xiàng)目設(shè)計(jì)為核心的課程教學(xué)內(nèi)容的改革
CDIO是“做中學(xué)”原則和“基于項(xiàng)目的教育和學(xué)習(xí)”的集中體現(xiàn)[3]。真實(shí)項(xiàng)目來(lái)自企業(yè),或是學(xué)生感興趣的游戲等,比如:簡(jiǎn)易計(jì)算器、電子萬(wàn)年歷、畫圖游戲、貪吃蛇游戲等。考慮到學(xué)生的個(gè)性化培養(yǎng),學(xué)生在訓(xùn)練的時(shí)候,可以分組選擇不同的項(xiàng)目。基礎(chǔ)性實(shí)驗(yàn)、設(shè)計(jì)性實(shí)驗(yàn)、綜合性實(shí)驗(yàn)、真實(shí)項(xiàng)目設(shè)計(jì)這四個(gè)層次的實(shí)踐環(huán)節(jié)貫穿于整個(gè)課程教學(xué)過(guò)程,較好地實(shí)現(xiàn)了CDIO教育理念中的培養(yǎng)學(xué)生構(gòu)思、設(shè)計(jì)、實(shí)施和運(yùn)行這四方面能力的要求。
案例分析:用C語(yǔ)言做一個(gè)基本的電子萬(wàn)年歷程序,要求能根據(jù)鍵盤所輸入的年份和月份信息,輸出顯示某年某月的日歷和星期之間的對(duì)應(yīng)關(guān)系,基本要求如圖1所示。
總體來(lái)說(shuō),該項(xiàng)目可以依次拆分成以下四個(gè)子問(wèn)題:(1)閏年的算法,涉及到分支程序設(shè)計(jì);(2)如何計(jì)算某年某月的第一天是星期幾,主要涉及到循環(huán)和分支程序設(shè)計(jì)的綜合運(yùn)用;(3)如何循環(huán)輸出指定年月的全部日期和星期之間的對(duì)應(yīng)關(guān)系,涉及到多重循環(huán)和break、continue等特殊分支程序設(shè)計(jì)的綜合運(yùn)用;(4)如何設(shè)計(jì)程序使其能根據(jù)所輸入的內(nèi)容y/n來(lái)繼續(xù)正確的輸出萬(wàn)年歷或是結(jié)束運(yùn)行,這一步看似簡(jiǎn)單的大循環(huán),實(shí)際是基礎(chǔ)知識(shí)和循環(huán)程序設(shè)計(jì)的綜合運(yùn)用,如果基礎(chǔ)沒(méi)掌握好,相應(yīng)變量的初值沒(méi)清零或重置,后續(xù)日歷的輸出都將會(huì)錯(cuò)位。這4個(gè)子問(wèn)題中,第1個(gè)子問(wèn)題屬于基礎(chǔ)性實(shí)驗(yàn)內(nèi)容,其他3個(gè)子問(wèn)題都屬于綜合性實(shí)驗(yàn)內(nèi)容。整個(gè)項(xiàng)目開發(fā)實(shí)現(xiàn)過(guò)程中,根據(jù)不同小組的做法,還會(huì)涉及到本課程中的其他知識(shí)點(diǎn),比如用多函數(shù)多文件實(shí)現(xiàn)模塊化的程序設(shè)計(jì)思想和多文件系統(tǒng)的聯(lián)調(diào);使用指針做形參、數(shù)組名或數(shù)組元素做實(shí)參等數(shù)組和指針的綜合運(yùn)用等。因此,學(xué)生在完成這一個(gè)項(xiàng)目的同時(shí),就掌握了C語(yǔ)言中絕大部分基本知識(shí)要點(diǎn)如常量變量的使用、C語(yǔ)言中的5類常用語(yǔ)句和3種基本的程序設(shè)計(jì)方法等,同時(shí)也熟練運(yùn)用并掌握了重難點(diǎn)知識(shí),比如數(shù)組、函數(shù)、指針這三者的結(jié)合。
各小組在做這個(gè)項(xiàng)目時(shí),在第1,3,4這3個(gè)子問(wèn)題上沒(méi)有太大差別,在第2個(gè)子問(wèn)題的求解上,用到的方法比較多,其中有代表性的是以下兩種。
方法一:首先找一個(gè)參考日期及其所對(duì)應(yīng)的星期,然后計(jì)算要給定日期和參考日期之間的閏年個(gè)數(shù),算出某年某月的第一天是星期幾,從而顯示該月的日歷。該方法的重難點(diǎn)在于輸出日歷時(shí)如何正確處理某月1號(hào)與星期之間的對(duì)應(yīng)關(guān)系以及如何正確使用特殊符號(hào)進(jìn)行對(duì)齊設(shè)置,比如制表符或空格符的運(yùn)用。部分學(xué)生在處理對(duì)齊時(shí)用到switch…case語(yǔ)句,也有學(xué)生使用的是多重循環(huán)。
方法二:蔡勒公式,使用公式計(jì)算某年某月的第一天是星期幾的做法如下:首先用一個(gè)變量記錄星期與年份和世紀(jì)之間的對(duì)應(yīng)關(guān)系,比如下面這種寫法:iweek=(y+y/4+c/4-2*c+26*(m+1)/10)%7;然后判斷這個(gè)表達(dá)式的值為正數(shù)還是負(fù)數(shù),如果是正數(shù),后面的程序中直接使用,如果是負(fù)數(shù),要通過(guò)加7循環(huán)變成正數(shù)。這種方法看似簡(jiǎn)單,只要簡(jiǎn)單的套用公式,但是關(guān)于世紀(jì)和年份之間的關(guān)系要特別注意,尤其對(duì)于類似于2000年和某些年份的3月這樣的特殊日期,學(xué)生如果考慮不周,就很容易導(dǎo)致輸出的日歷出現(xiàn)錯(cuò)位的情況。
2.2 創(chuàng)新和個(gè)性化教育為主的教學(xué)方法的改革
大力探索并改革不適應(yīng)新時(shí)期形勢(shì)的教學(xué)模式,提出依據(jù)科學(xué)理念設(shè)計(jì)課程教學(xué)程序、優(yōu)化教學(xué)過(guò)程、指導(dǎo)實(shí)驗(yàn)方法、培養(yǎng)創(chuàng)新能力的“引導(dǎo)-探索-實(shí)驗(yàn)-創(chuàng)新”的教學(xué)模式。突出學(xué)生的主體地位,使學(xué)生主動(dòng)參與教學(xué)和實(shí)驗(yàn)。讓學(xué)生獨(dú)立自主的設(shè)計(jì)實(shí)驗(yàn),利用實(shí)驗(yàn)過(guò)程,發(fā)揮學(xué)生的主觀能動(dòng)作用,由學(xué)生互相講解學(xué)習(xí)方法和設(shè)計(jì)思路,讓學(xué)生互相學(xué)習(xí)和監(jiān)督,最大限度地調(diào)動(dòng)學(xué)生自主學(xué)習(xí)的積極性和主動(dòng)性。變單向信息傳遞為雙向式、多向式信息傳遞與交流,在教學(xué)和實(shí)驗(yàn)中,加強(qiáng)對(duì)學(xué)生實(shí)驗(yàn)方法和創(chuàng)新能力的培養(yǎng)。
采用分類匯總和數(shù)據(jù)透視表的方法,綜合分析了學(xué)生的上機(jī)實(shí)驗(yàn)、期中測(cè)試、項(xiàng)目答辯、期末考試的成績(jī)和表現(xiàn),結(jié)合近5年來(lái)的教學(xué)情況,統(tǒng)計(jì)分析了教改實(shí)施前后,學(xué)生對(duì)課程知識(shí)點(diǎn)的掌握情況和學(xué)生的編程能力以及綜合運(yùn)用能力,對(duì)比表如表1所示。
表中數(shù)據(jù)的百分比根據(jù)統(tǒng)計(jì)人數(shù)計(jì)算得到,教改實(shí)施前大約500人,教改實(shí)施后大約400人。
3 ?主要目標(biāo)和特色分析
3.1 ?團(tuán)隊(duì)能力和團(tuán)隊(duì)精神
團(tuán)隊(duì)能力是CDIO教育理念要求工程畢業(yè)生必備的一種能力,也是考核學(xué)生的一個(gè)重要方式[4]。在實(shí)際教學(xué)過(guò)程中,根據(jù)項(xiàng)目的難易程度,學(xué)生按2~3人分為一組。每個(gè)學(xué)生在項(xiàng)目設(shè)計(jì)中完成自己的學(xué)習(xí)和實(shí)踐任務(wù),做好自己的模塊分工。同一個(gè)項(xiàng)目組的學(xué)生還可以就共同的學(xué)習(xí)任務(wù)和計(jì)劃進(jìn)行溝通并協(xié)商解決,這既符合CDIO理念中的團(tuán)隊(duì)精神,又能讓學(xué)生提前適應(yīng)團(tuán)隊(duì)協(xié)作,為以后的工程學(xué)習(xí)和工作提供良好而扎實(shí)的基礎(chǔ)。
比如上述的萬(wàn)年歷問(wèn)題,有的團(tuán)隊(duì)是3人一組共同完成的,項(xiàng)目負(fù)責(zé)人把項(xiàng)目分成3個(gè)模塊,互相商量好模塊之間的接口,然后由3個(gè)成員分別按照要求完成自己的部分,最后進(jìn)行聯(lián)調(diào)。在整個(gè)過(guò)程中,學(xué)生不僅學(xué)會(huì)了如何把復(fù)雜問(wèn)題或大項(xiàng)目分解成若干個(gè)簡(jiǎn)單的子問(wèn)題進(jìn)行求解,還學(xué)會(huì)了團(tuán)隊(duì)合作和多文件的聯(lián)調(diào)。學(xué)生們普遍反映在項(xiàng)目設(shè)計(jì)實(shí)現(xiàn)過(guò)程中,不斷的聯(lián)調(diào)和細(xì)分就把以前不太懂的問(wèn)題全都弄清楚了,有的甚至能舉一反三,學(xué)習(xí)的勁頭大大增強(qiáng)。甚至在整個(gè)項(xiàng)目設(shè)計(jì)過(guò)程中,還碰撞出新的火花,深刻理解了指針在程序設(shè)計(jì)中的妙用。
3.2 對(duì)團(tuán)隊(duì)集中驗(yàn)收和對(duì)學(xué)生個(gè)體進(jìn)行評(píng)估驗(yàn)收的雙重驗(yàn)收模式
對(duì)學(xué)生個(gè)體進(jìn)行評(píng)估驗(yàn)收是CDIO教學(xué)模式的標(biāo)準(zhǔn)之一??己说男问娇梢允嵌鄻拥?,比如采用“分組答辯+個(gè)體提問(wèn)”的方式,由學(xué)生演示程序的運(yùn)行結(jié)果,然后針對(duì)自己在小組中的分工情況,詳細(xì)介紹具體代碼和遇到的問(wèn)題,最后提交項(xiàng)目總結(jié)報(bào)告。為了讓學(xué)生充分參與到項(xiàng)目中,最終的成果驗(yàn)收采取小組長(zhǎng)總結(jié)式匯報(bào)和小組成員依次匯報(bào)的方式,目的就是要讓參與到項(xiàng)目中的每個(gè)人都能在動(dòng)手能力和編程能力上有很大程度的提高。項(xiàng)目組的每個(gè)成員必須清楚的意識(shí)到本人所做的模塊對(duì)整個(gè)項(xiàng)目的作用,從而在一定程度上提高學(xué)生學(xué)習(xí)的積極性和團(tuán)隊(duì)精神。
3.3 考核方式的多元化
本次教學(xué)改革中的考核方式采取以“平時(shí)上機(jī)實(shí)驗(yàn)+期中無(wú)紙化編程測(cè)試+期末閉卷考試”為主,“項(xiàng)目設(shè)計(jì)及答辯+期末閉卷考試”為輔的方式,讓教師在考核過(guò)程中起到主導(dǎo)作用,站在IT企業(yè)或用人單位的角度來(lái)設(shè)立問(wèn)題,將學(xué)生置于一個(gè)大的企業(yè)環(huán)境中,引導(dǎo)學(xué)生自主學(xué)習(xí)和設(shè)計(jì),使其具備業(yè)界所需的素質(zhì)和能力[5]。考核方式的多元化也能讓一些動(dòng)手能力較強(qiáng)的學(xué)生能更主動(dòng)深入的學(xué)習(xí),提高他們的學(xué)習(xí)主動(dòng)性和積極性,進(jìn)而讓他們參與到大學(xué)生創(chuàng)新性實(shí)踐活動(dòng)中去,把課堂所學(xué)知識(shí)真正用于實(shí)踐中,服務(wù)于社會(huì)。同時(shí)也讓一些理論知識(shí)比較扎實(shí)的學(xué)生能發(fā)揮他們的長(zhǎng)處,不至于在自己不擅長(zhǎng)的領(lǐng)域花費(fèi)較多時(shí)間,真正的體現(xiàn)創(chuàng)新和個(gè)性化教學(xué)的課程改革宗旨。
4 ?結(jié)語(yǔ)
本文針對(duì)現(xiàn)有的《程序設(shè)計(jì)基礎(chǔ)》課程的問(wèn)題和課程特點(diǎn),在基于項(xiàng)目的教育和學(xué)習(xí)的CDIO教育理念的指導(dǎo)下,提出了創(chuàng)新和個(gè)性化的教學(xué)方式和考核方式,并給出了可行性教改方案。課程改革已經(jīng)應(yīng)用在兩屆共400人的學(xué)生身上,學(xué)生的自主學(xué)習(xí)能力和團(tuán)隊(duì)協(xié)作能力得到了大幅度提升,學(xué)生愿意參與到大學(xué)生創(chuàng)新實(shí)踐項(xiàng)目中去的意愿也在不斷增強(qiáng)。有理由相信,隨著CDIO工程教育理念的不斷深入和基于此理念的改革和探索,學(xué)生的學(xué)習(xí)效果和動(dòng)手能力都會(huì)得到更大程度的提高。
參考文獻(xiàn)
[1] 王軍英,馬紅梅.C語(yǔ)言程序設(shè)計(jì)教學(xué)存在的問(wèn)題與對(duì)策[J].教育理論與實(shí)踐,2015(3):63-64.
[2] 王星魁,相潔,孟東霞,等.程序設(shè)計(jì)技術(shù)基礎(chǔ)課程考試改革的研究與實(shí)踐[J].教育理論與實(shí)踐,2019(12):47-49.
[3] 曾曉輝,文展,付琳.CDIO教學(xué)模式在編程類課程中的改革與評(píng)價(jià)探索[J].當(dāng)代教育理論與實(shí)踐,2016(8):123-125.
[4] 葉冬芬,范偉,楊明霞,等.計(jì)算機(jī)程序設(shè)計(jì)類課程實(shí)驗(yàn)教學(xué)改革的研究[J].福建電腦,2010(11):32-33.
[5] 劉丹.基于CDIO的教學(xué)模式在“數(shù)據(jù)結(jié)構(gòu)”課程中的研究與應(yīng)用[J].工業(yè)和信息化教育,2013(5):29-32.