楊建軍+鄭秀杰
摘 要 三本學(xué)校在程序設(shè)計(jì)的教學(xué)中,需要結(jié)合學(xué)生的特點(diǎn),就“面向?qū)ο蟪绦蛟O(shè)計(jì)”課程,進(jìn)行理論課程實(shí)踐化處理。本文在教學(xué)方法的探索上,貫徹CDIO教學(xué)理念,注重把實(shí)踐環(huán)節(jié)直接引入到課堂中來(lái),同時(shí),縮減整個(gè)課程體系的學(xué)時(shí),增加學(xué)生課后的調(diào)試程序的時(shí)間,以形成區(qū)別于傳統(tǒng)教學(xué)方式設(shè)計(jì)的不同措施,并對(duì)傳統(tǒng)的教學(xué)方法和實(shí)踐化教學(xué)方法的效果進(jìn)行了對(duì)比。
關(guān)鍵詞 面向?qū)ο蟪绦蛟O(shè)計(jì) 實(shí)踐化教學(xué) CDIO教學(xué)理念
中圖分類(lèi)號(hào):G424 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.16400/j.cnki.kjdkz.2015.11.052
"Object-Oriented Programming" Engineering Practice
Teaching Methods Reform
YANG Jianjun, ZHENG Xiujie
(Chengdu College of Electronic Science and Technology of China, Chengdu, Sichuan 611731)
Abstract In College program design teaching, the need to combine the characteristics of students, on the "object-oriented programming" course, theory course practice process. This article in the exploration of teaching methods, and implementing CDIO teaching philosophy, focusing on the practical aspects directly into the classroom in the past, at the same time, reduce hours throughout the curriculum system, increase the time students after school debugger to form different from traditional teaching methods design of different measures, and the traditional teaching methods and practice teaching method results were compared.
Key words Object-Oriented Programming; practice teaching; CDIO teaching concept
1 電子類(lèi)專(zhuān)業(yè)開(kāi)設(shè)該課程的必要性
程序設(shè)計(jì)語(yǔ)言的發(fā)展,隨著項(xiàng)目規(guī)模的不斷增加,從最初的面向過(guò)程的程序設(shè)計(jì)思想,到目前大行其道的面向?qū)ο蟮某绦蛟O(shè)計(jì)思想,表1是Tiobe2015上半年每月開(kāi)發(fā)語(yǔ)言熱度排行榜。
在Tiobe排行榜單中,位于前十的語(yǔ)言除了C語(yǔ)言,其他都是面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言,可見(jiàn),工科電子類(lèi)的專(zhuān)業(yè),培養(yǎng)學(xué)生面向?qū)ο蟪绦蛟O(shè)計(jì)思想的重要性,然而,就學(xué)習(xí)難度而言,面向?qū)ο蟪绦蛟O(shè)計(jì)的學(xué)習(xí)難度較大,故此,探索一種適合每個(gè)學(xué)校特點(diǎn)的教學(xué)方法至關(guān)重要,而面向就業(yè)的導(dǎo)向,必須讓學(xué)生能夠具有一定的工程經(jīng)驗(yàn),這也是貫徹CDIO理念的思路,筆者在承擔(dān)我校的理論課程實(shí)踐化的過(guò)程中,對(duì)本門(mén)課程的教學(xué)進(jìn)行了積極的探索。
2 目前高?!懊嫦?qū)ο蟪绦蛟O(shè)計(jì)”教學(xué)模式
傳統(tǒng)的“面向?qū)ο蟮某绦蛟O(shè)計(jì)”的課程體系,普遍采用了三階段的方式完成,即基礎(chǔ)階段的語(yǔ)法講解,旨在理解語(yǔ)法的配套實(shí)驗(yàn)課程,相關(guān)的課程設(shè)計(jì)(可選),在學(xué)分的分配上,基本上采取了4:2:1的比例,即基礎(chǔ)語(yǔ)法的講解大致占到4個(gè)學(xué)分,實(shí)驗(yàn)環(huán)節(jié)占到2個(gè)學(xué)分,大課程設(shè)計(jì)占1個(gè)學(xué)分。該體系的優(yōu)點(diǎn)是按部就班,有條不紊,學(xué)生可以在較為松散的幾個(gè)學(xué)期中完成該課程的學(xué)習(xí),缺點(diǎn)是占用學(xué)分較多,課堂的效果需要用實(shí)驗(yàn)來(lái)鞏固和彌補(bǔ)。不利于國(guó)家倡導(dǎo)的減負(fù)原則。
3 基于CDIO實(shí)踐化的“面向?qū)ο蟪绦蛟O(shè)計(jì)”課程的教學(xué)設(shè)計(jì)
(1)CDIO理念的核心就是工程實(shí)踐,筆者在實(shí)際的教學(xué)過(guò)程中,逐漸對(duì)該課程體系的教學(xué)進(jìn)行了改革調(diào)整,即去掉實(shí)驗(yàn)課程的安排,而是將實(shí)驗(yàn)環(huán)節(jié)直接引入到基礎(chǔ)語(yǔ)法理論的講解中。
(2)實(shí)踐化教學(xué)方法的設(shè)計(jì)。實(shí)踐化教學(xué)方法,就是注重實(shí)踐環(huán)節(jié)的作用,尤其對(duì)于調(diào)試程序動(dòng)手能力的培養(yǎng),通過(guò)實(shí)際的操作,讓學(xué)生能夠減少理解抽象理論知識(shí)的時(shí)間,這樣的方式特別適用于二本或者三本院校的學(xué)生。教學(xué)方法的設(shè)計(jì)上,主要從以下幾個(gè)方面進(jìn)行:
第一,課時(shí)總量,以5個(gè)學(xué)分為宜(即80學(xué)時(shí)),這樣,就將傳統(tǒng)的總共112學(xué)時(shí)縮減了32個(gè)學(xué)時(shí)。
第二,上課方式是實(shí)踐化的關(guān)鍵,上課方式上,需要學(xué)生自帶電腦,但是上課地點(diǎn)選用普通的多媒體教室即可,這樣既不占用實(shí)驗(yàn)室資源,又讓學(xué)生在上課時(shí)可以隨時(shí)動(dòng)手調(diào)試驗(yàn)證程序,同時(shí)如果學(xué)生開(kāi)始調(diào)試程序,有利于其將精力集中在教學(xué)內(nèi)容上,而且,在學(xué)生如果未完成時(shí),可以在課后自己去找解決方案。
第三,上課講解和練習(xí)的時(shí)間比例,筆者通過(guò)教學(xué)實(shí)踐,覺(jué)得講解和練習(xí)的比例以2:3為宜,即90分鐘的一節(jié)大課,安排大約35分鐘的時(shí)間進(jìn)行講解,而55分鐘由教師和實(shí)驗(yàn)老師一起指導(dǎo)學(xué)生完成當(dāng)堂的課程內(nèi)容。
第四,穿插不同難易程度的模擬項(xiàng)目作為大課程設(shè)計(jì)的代替,例如,在教學(xué)過(guò)程中,在講解面向?qū)ο蟮娜齻€(gè)特征時(shí),在每個(gè)特征——封裝、繼承、多態(tài)的講解結(jié)束時(shí),都安排不同的模擬項(xiàng)目讓學(xué)生完成,這些模擬項(xiàng)目或者來(lái)自教師自己的工作經(jīng)歷,或者來(lái)源于各類(lèi)企業(yè)的面試題目。
第五,考核方式方面,可以采用答辯的方式完成,這樣做的好處是可以比較準(zhǔn)確地了解到學(xué)生掌握本門(mén)課程的情況,及時(shí)準(zhǔn)確獲得課程教學(xué)效果的反饋。這種方式讓學(xué)生很難通過(guò)作弊獲得好成績(jī),同時(shí),可以鍛煉學(xué)生的表達(dá)能力。
4 實(shí)踐化課堂示例
在實(shí)踐化課堂的設(shè)計(jì)上,筆者設(shè)計(jì)了每次課程(90分鐘)分別由基礎(chǔ)講解(15~25分鐘),示例跟隨(25~30分鐘)和進(jìn)階(>30分鐘,未完成的學(xué)生,提出要求,讓其課后自信完成)三個(gè)遞進(jìn)的過(guò)程組成,下面就以封裝的講解為例進(jìn)行展示。
基礎(chǔ)講解中,課件展示封裝出現(xiàn)的緣由,封裝的目的,封裝的實(shí)現(xiàn)過(guò)程。然后需要同學(xué)們動(dòng)手從教材中找出相應(yīng)的文字描述,并勾畫(huà)出來(lái)。
示例跟隨部分,利用多媒體教學(xué)設(shè)備隨堂演示長(zhǎng)方形(只關(guān)注幾何描述)封裝的過(guò)程,配合板書(shū)和課件,將長(zhǎng)方形這種幾何圖形在計(jì)算機(jī)中描述出來(lái),著重要學(xué)生領(lǐng)會(huì)出封裝為了信息的安全,以及封裝如何做到信息的安全等的實(shí)現(xiàn)措施。
示例代碼如下:
class Rectangle
{
private:
float width;
float height;
public:
float Area()
{
留出空間,引導(dǎo)學(xué)生完成此處程序的設(shè)計(jì)。
}
float Perimeter()
{
留出空間,引導(dǎo)學(xué)生完成此處程序的設(shè)計(jì)。
}
}
然后啟發(fā)同學(xué)寫(xiě)出其中的求面積方法Area和周長(zhǎng)的方法Perimeter。在完成以上代碼的跟隨練習(xí)后,要求學(xué)生模仿長(zhǎng)方形Rectangle類(lèi),設(shè)計(jì)出圓Circle類(lèi)。
而在進(jìn)階階段,為了增加學(xué)生的自學(xué)主動(dòng)性,需要學(xué)生自行挑選一種數(shù)據(jù)結(jié)構(gòu)中學(xué)習(xí)過(guò)的隊(duì)列、棧或者鏈表來(lái)進(jìn)行封裝,在課堂有限的時(shí)間內(nèi),對(duì)學(xué)生提出的疑問(wèn)進(jìn)行解答。
5 實(shí)踐化教學(xué)效果
表2是進(jìn)行改革之前和采用實(shí)踐化教學(xué)后學(xué)生考核成績(jī)的統(tǒng)計(jì)表,該統(tǒng)計(jì)表中,從2009始,對(duì)我系嵌入式方向?qū)I(yè)的同學(xué),采用不同的教學(xué)方法進(jìn)行授課教學(xué)。
由表2可知,傳統(tǒng)的教學(xué)方法,從考試成績(jī)優(yōu)秀率,畢業(yè)前找到相關(guān)方向?qū)嵙?xí)企業(yè)的比例,以及畢業(yè)從事相關(guān)行業(yè)等幾個(gè)方面來(lái)考量,都比實(shí)踐化教學(xué)的效果要遜色。
從考試優(yōu)秀率來(lái)看,實(shí)踐化教學(xué)以及采用的考核方法,都非常有利于給學(xué)生一定的壓力,促使他們不但要掌握理論,而且會(huì)操作,實(shí)踐操作和理論理解通過(guò)這樣的方式,可以達(dá)到互相促進(jìn)的效果。從在校生選擇相關(guān)實(shí)習(xí)行業(yè)的數(shù)量來(lái)看,由于在這個(gè)階段,能夠較早地掌握調(diào)試程序的技巧,而通過(guò)實(shí)踐掌握的知識(shí)也比較扎實(shí),所以在面對(duì)相關(guān)實(shí)習(xí)機(jī)會(huì)時(shí),這類(lèi)學(xué)生具有更好的表現(xiàn)。
可見(jiàn),在理論課實(shí)踐化的過(guò)程中,“面向?qū)ο蟪绦蛟O(shè)計(jì)”的實(shí)踐化教學(xué)改革,在筆者所在學(xué)校取得了較大的成果,在后續(xù)的教學(xué)過(guò)程中,將會(huì)不斷總結(jié),以期完善。