陳張榮
摘要:社會(huì)不斷發(fā)展,教育改革不斷深入,傳統(tǒng)的教學(xué)方法逐漸被新型高效的教學(xué)模式代替,實(shí)現(xiàn)了高效課堂的打造。其中項(xiàng)目教學(xué)以項(xiàng)目理論為支撐,在高職C++課程教學(xué)中發(fā)揮著積極作用。本文重點(diǎn)就該教學(xué)法在高職院校C++課程教學(xué)中的運(yùn)用進(jìn)行分析,以期更好地推廣項(xiàng)目教學(xué),提升高職C++課程教學(xué)水平。
關(guān)鍵詞:項(xiàng)目教學(xué);C++教學(xué);高職教學(xué);教學(xué)模式;改革
中圖分類號(hào):G712 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1674-9324(2017)12-0249-02
一、項(xiàng)目教學(xué)法及基于項(xiàng)目學(xué)習(xí)理論研究
項(xiàng)目教學(xué)法簡(jiǎn)單地說(shuō)就是以教師為指導(dǎo),讓學(xué)生自主解決相對(duì)獨(dú)立的學(xué)習(xí)項(xiàng)目。針對(duì)C++課程而言,項(xiàng)目教學(xué)法具體涉及人員的有效組織及管理、軟件的度量、軟件項(xiàng)目計(jì)劃的制定、軟件質(zhì)量保證、軟件過(guò)程能力客觀評(píng)估、軟件配置管理等,所有的教學(xué)內(nèi)容由學(xué)生負(fù)責(zé),學(xué)生在項(xiàng)目任務(wù)引領(lǐng)下探索課堂知識(shí),了解并把握項(xiàng)目每個(gè)環(huán)節(jié)的每項(xiàng)學(xué)習(xí)要求。信息時(shí)代的到來(lái),計(jì)算機(jī)思維的培養(yǎng)尤為重要,在高職院校做好創(chuàng)新思維的培養(yǎng)可以實(shí)現(xiàn)高素質(zhì)創(chuàng)新型人才的輸出,在創(chuàng)新思維指導(dǎo)下奠定科研創(chuàng)新的基礎(chǔ)。基于項(xiàng)目的學(xué)習(xí)理論起源于美國(guó),最初其被作為研究性學(xué)習(xí)的主要模式之一,國(guó)外關(guān)于項(xiàng)目學(xué)習(xí)的理論研究不斷深入取得了優(yōu)異成果。國(guó)內(nèi)方面,2002年寧波大學(xué)劉景福教授,江西師范大學(xué)教學(xué)論研究中心鐘志賢教授在《外國(guó)教育研究》上發(fā)表了《基于項(xiàng)目的學(xué)習(xí)模式研究》,明確了基于項(xiàng)目學(xué)習(xí)的定義:以學(xué)科概念和原理為中心,以制作作品將作品進(jìn)行推廣為目的,在現(xiàn)實(shí)世界發(fā)揮資源共享優(yōu)勢(shì),解決相互關(guān)聯(lián)的系列問(wèn)題的新型學(xué)習(xí)模式。其以杜威的實(shí)用主義教育理論及布魯納的學(xué)習(xí)理論為支撐。2011年重慶大學(xué)金凡路在《職業(yè)教育立體化多元化項(xiàng)目主題式教學(xué)評(píng)價(jià)構(gòu)想》中提出了多元化主體評(píng)價(jià)、多層化內(nèi)容評(píng)價(jià)及多樣化方式評(píng)價(jià)的立體化項(xiàng)目教學(xué)體系,同樣是對(duì)項(xiàng)目教學(xué)理論的完善與延伸闡述。
二、C++課程項(xiàng)目教學(xué)法的實(shí)施
1.課程項(xiàng)目的有效選取。對(duì)于C++教學(xué)來(lái)說(shuō),最為關(guān)鍵的當(dāng)屬類與對(duì)象、繼承與多態(tài)、輸入輸出流及異常處理技術(shù)的講解。C++課程學(xué)習(xí)的難點(diǎn)在于課程語(yǔ)言的把握,其中指針與動(dòng)態(tài)內(nèi)存分配時(shí)語(yǔ)言學(xué)習(xí)的精華。開(kāi)展項(xiàng)目教學(xué)必須做好教學(xué)項(xiàng)目的明確,項(xiàng)目必須做到語(yǔ)言機(jī)制精華的滲透,讓傳統(tǒng)教學(xué)知識(shí)系統(tǒng)化目的化。項(xiàng)目的設(shè)定應(yīng)注重可理解性與實(shí)用性,也就是項(xiàng)目需求與實(shí)現(xiàn)能夠讓學(xué)生花最少的時(shí)間做最大限度的理解。課程項(xiàng)目分析、設(shè)計(jì)及實(shí)現(xiàn)接近真實(shí)的軟件開(kāi)發(fā),學(xué)生通過(guò)把握項(xiàng)目方法與技術(shù)能實(shí)現(xiàn)企業(yè)類似問(wèn)題的解決。UML是當(dāng)前使用廣泛的對(duì)象軟件工程技術(shù),在企業(yè)中得到廣泛運(yùn)用,在項(xiàng)目教學(xué)中引導(dǎo)學(xué)生用UML圖方式表達(dá),實(shí)現(xiàn)與企業(yè)真實(shí)項(xiàng)目對(duì)接。將UML技術(shù)引入C++課程教學(xué),學(xué)生理解UML的表達(dá)分析,同時(shí)能根據(jù)UML圖寫(xiě)出對(duì)應(yīng)的C++實(shí)現(xiàn)代碼,制作UML圖。項(xiàng)目的合理選取既能涵蓋基本的語(yǔ)言機(jī)制,有具有實(shí)用意義,難度中等,更能激發(fā)學(xué)生的學(xué)習(xí)興趣,讓他們更加積極地投入到項(xiàng)目學(xué)習(xí)之中。
2.項(xiàng)目教學(xué)常見(jiàn)方法。(1)復(fù)雜向簡(jiǎn)單的轉(zhuǎn)化。程序設(shè)計(jì)遵循既定原則,自上而下,逐步求精,將《學(xué)生信息管理》劃分為系統(tǒng)初始化處理,依次是數(shù)據(jù)輸入、數(shù)據(jù)處理、數(shù)據(jù)輸出、數(shù)據(jù)維護(hù)。通過(guò)項(xiàng)目的層層劃分,子項(xiàng)目數(shù)量增多,原項(xiàng)目難度降低,使得項(xiàng)目教學(xué)實(shí)現(xiàn)從復(fù)雜到簡(jiǎn)單的轉(zhuǎn)化。而每個(gè)子項(xiàng)目還可以繼續(xù)分離,以數(shù)據(jù)處理為例,可以具體劃分為數(shù)據(jù)排序、數(shù)據(jù)查詢等,讓學(xué)生依次完成單一項(xiàng)目,逐漸實(shí)現(xiàn)代碼的完整理解與把握。(2)最合適的描述表達(dá)。UML是C++課程中通用的圖形化建模語(yǔ)言,定義良好善于表達(dá),功能十分強(qiáng)大兵適用普遍,其中面向?qū)ο蟮姆治鲋饕诩訌?qiáng)對(duì)問(wèn)題空間與系統(tǒng)任務(wù)的理解上,改進(jìn)交流、與需求保持一致、支持軟件重用四個(gè)方面比其他系統(tǒng)分析方法更具優(yōu)勢(shì)。在項(xiàng)目教學(xué)中引入U(xiǎn)ML,對(duì)項(xiàng)目開(kāi)展需求分析,注重總體設(shè)計(jì)基礎(chǔ)上詳細(xì)設(shè)計(jì),編寫(xiě)代碼,在各個(gè)階段進(jìn)行對(duì)應(yīng)描述,實(shí)現(xiàn)圖到程序的有效轉(zhuǎn)化。(3)啟發(fā)引導(dǎo)教學(xué)的魅力。以冒泡排序?yàn)槔?,依次比較相鄰數(shù)字,小數(shù)在前,大數(shù)在后,第一趟所得最大數(shù)值放到元素最后位置上,第二趟將剩下元素兩兩比較,剩余元素最大放到倒數(shù)第二位置,依次找到趟數(shù)與該趟比較次數(shù)之和等于元素個(gè)數(shù),啟發(fā)學(xué)生對(duì)二維數(shù)組的思考,假設(shè)其按照行排序,對(duì)應(yīng)的列中元素也發(fā)生相應(yīng)交換,在教師的項(xiàng)目啟發(fā)下,學(xué)生加強(qiáng)對(duì)相關(guān)問(wèn)題的關(guān)注,有效解決異常問(wèn)題。(4)算法優(yōu)化理論的應(yīng)用。依然以數(shù)據(jù)冒泡排序,某趟排序后,數(shù)據(jù)滿足排序需求,是否還進(jìn)行排序?排序結(jié)束設(shè)計(jì)標(biāo)記,標(biāo)記初始數(shù)值不需要排序,若有交換,該標(biāo)記位置位需重新排序,當(dāng)末趟排序完成,查看標(biāo)志是否依然需要排序,如果不再需要,排序完成,如果需要,優(yōu)化算法。再例如求質(zhì)素問(wèn)題,斐波那契序列問(wèn)題的優(yōu)化都是通過(guò)算法優(yōu)化讓學(xué)生了解算法執(zhí)行時(shí)間與數(shù)據(jù)占用空間進(jìn)行估算完成的。
三、C++課程項(xiàng)目教學(xué)過(guò)程設(shè)計(jì)
1.創(chuàng)設(shè)有效的教學(xué)情境。首先是用已知問(wèn)題創(chuàng)設(shè)情境。語(yǔ)法上先讓學(xué)生回憶數(shù)學(xué)中的有窮序列,然后講解數(shù)組,將數(shù)組與有窮序列加以對(duì)照,二維數(shù)組與矩陣,平面對(duì)照,三維數(shù)組與立體坐標(biāo)對(duì)照。算法上,以往選擇目測(cè)方式進(jìn)行數(shù)組的有序排列,在此基礎(chǔ)上給出兩兩比較進(jìn)行排序的冒泡法。例如在判斷正整數(shù)N是否為質(zhì)數(shù)時(shí),可以根據(jù)數(shù)學(xué)定義求解,用正整數(shù)分解兩個(gè)因數(shù)積的形式得到最大的因數(shù)不超過(guò)M/2,再接著深入分析,最大因數(shù)不超M的平方根。其次是尋找新舊知識(shí)連接點(diǎn),做好情境創(chuàng)設(shè)。通過(guò)組織學(xué)生分享對(duì)“人以群分物以類聚”這句話的理解,引導(dǎo)學(xué)生思考人的特點(diǎn)與活動(dòng),讓學(xué)生分享“演繹與推理”的認(rèn)識(shí),在函數(shù)及結(jié)構(gòu)體的基礎(chǔ)上,提出類的概念,讓學(xué)生依次理解類及其特點(diǎn)、語(yǔ)法格式等。通過(guò)新舊知識(shí)的聯(lián)系對(duì)比讓學(xué)生明白計(jì)算機(jī)的很多概念是源于數(shù)學(xué),運(yùn)用已有的知識(shí)去激發(fā)學(xué)生課程學(xué)習(xí)的興趣。
2.課堂教學(xué)優(yōu)化師生關(guān)系。首先是鼓勵(lì)學(xué)生自主探究。教師在課程教學(xué)時(shí)應(yīng)給予學(xué)生充分的自由讓學(xué)生自主探究,讓學(xué)生自主完成知識(shí)總結(jié),學(xué)生動(dòng)手查閱資料,強(qiáng)化自身學(xué)習(xí)能力,激發(fā)其潛在創(chuàng)造力。在該環(huán)節(jié)中教師要鼓勵(lì)學(xué)生大膽發(fā)言,就自己解決問(wèn)題的思路及方式方法與大家共享,在課堂上形成集體探討的熱烈氛圍,而這也有助于合作精神的培養(yǎng)。其次是創(chuàng)設(shè)良好的環(huán)境。計(jì)算機(jī)思維的培養(yǎng)離不開(kāi)良好的教學(xué)環(huán)境,發(fā)揮各種載體的教學(xué)優(yōu)勢(shì),為學(xué)生呈現(xiàn)生動(dòng)豐富的案例,鼓勵(lì)學(xué)生在模仿中逐漸形成計(jì)算機(jī)思維能力,教師在教學(xué)實(shí)施中講解項(xiàng)目設(shè)計(jì)的原則與思想,學(xué)生在真實(shí)的工作情境中,通過(guò)練習(xí)項(xiàng)目掌握計(jì)算思維的方法原則,教師點(diǎn)評(píng),學(xué)生自由發(fā)言,在民主寬松的課堂氛圍中,一起探討分析問(wèn)題,學(xué)生思維更為流暢,課堂氣氛更為活躍。最后是鼓勵(lì)學(xué)生自主探究。項(xiàng)目教學(xué)重在項(xiàng)目設(shè)計(jì),學(xué)生拿出自己的設(shè)計(jì)思路與方案,潛移默化地提升自身探究能力。在具體的課堂教學(xué)中抓住教材內(nèi)容重點(diǎn)、難點(diǎn)及易錯(cuò)點(diǎn),教師可以故意出錯(cuò),通過(guò)對(duì)錯(cuò)的對(duì)比教學(xué)加深學(xué)生學(xué)習(xí)印象,學(xué)生從實(shí)際出發(fā),參與實(shí)踐性問(wèn)題的解決,實(shí)現(xiàn)課堂學(xué)習(xí)與生活經(jīng)驗(yàn)的融合。
四、C++課程項(xiàng)目教學(xué)效果考核
教學(xué)效果考核涉及階段考核、小組自評(píng)、課堂交流、綜合評(píng)價(jià)四個(gè)方面。其中階段考核就是引導(dǎo)學(xué)生在教師的有效監(jiān)督之下,每個(gè)小組認(rèn)真參與完成項(xiàng)目的教學(xué)實(shí)施,直接參與項(xiàng)目需求分析、概要設(shè)計(jì)、單元測(cè)試及集成測(cè)試,在學(xué)習(xí)后接受考核,完成該階段的學(xué)習(xí)后才能進(jìn)入下一階段的學(xué)習(xí),對(duì)應(yīng)做好考核記錄。而小組自評(píng)重點(diǎn)是自評(píng),教師指導(dǎo)學(xué)生理解迭代及收斂等程序概念,通過(guò)迭代后優(yōu)化的系統(tǒng)模型,積極消除功能性錯(cuò)誤。按照預(yù)防保護(hù)及通過(guò)冗余、容錯(cuò)及糾錯(cuò)的方式,引導(dǎo)學(xué)生樹(shù)立從最壞情形恢復(fù)系統(tǒng)的計(jì)算思維原則,讓學(xué)生形成更加成熟系統(tǒng)的思維體系。在完成上述兩環(huán)節(jié)任務(wù)后,鼓勵(lì)學(xué)生課堂交流。以組為單位,每一組代表就組內(nèi)研究成果課堂展示共享,具體闡述系統(tǒng)設(shè)計(jì)過(guò)程、遇到什么問(wèn)題、問(wèn)題如何解決等細(xì)節(jié)性問(wèn)題,教師及其他小組提問(wèn),組內(nèi)成員解答,通過(guò)課堂上的交流讓整個(gè)思維過(guò)程充分暴露,學(xué)生在討論中獲得多方面的認(rèn)識(shí)。最后是綜合評(píng)價(jià),C++課程要求學(xué)生做好學(xué)習(xí)記錄,在階段考核基礎(chǔ)上開(kāi)展綜合評(píng)價(jià),該評(píng)價(jià)包括自評(píng)、組評(píng)、師評(píng),重點(diǎn)做好對(duì)學(xué)生計(jì)算機(jī)思維能力、學(xué)習(xí)態(tài)度及處理方法的評(píng)價(jià),多方評(píng)價(jià)整合給予學(xué)生客觀公正的評(píng)價(jià)。
五、結(jié)束語(yǔ)
在C++課程教學(xué)中引入項(xiàng)目教學(xué),借助項(xiàng)目拉動(dòng)教學(xué)實(shí)施,學(xué)生動(dòng)手實(shí)踐,發(fā)現(xiàn)問(wèn)題自主解決問(wèn)題。項(xiàng)目教學(xué)案例融入使得交互課堂更為活躍,學(xué)生更深入地了解C++課程的既定原則與思維方式,提升課堂參與性與主動(dòng)性,實(shí)現(xiàn)從被動(dòng)學(xué)習(xí)向主動(dòng)學(xué)習(xí)的轉(zhuǎn)變,提升C++課程教學(xué)實(shí)效。
參考文獻(xiàn):
[1]孫博.基于項(xiàng)目的學(xué)習(xí)在《C++程序設(shè)計(jì)》教學(xué)中的應(yīng)用研究[D].曲阜師范大學(xué),2014.
[2]陸發(fā)芹.項(xiàng)目教學(xué)在中職計(jì)算機(jī)專業(yè)課中的應(yīng)用[D].首都師范大學(xué),2008.
[3]劉暢.項(xiàng)目教學(xué)法在C++程序設(shè)計(jì)教學(xué)過(guò)程中的應(yīng)用[J].齊齊哈爾師范高等??茖W(xué)校學(xué)報(bào),2009,(05):124-125.