韓 娜 王 洋 關(guān)明山
文章編號(hào):1672-5913(2009)02-0106-02
摘 要:本文結(jié)合筆者多年的教學(xué)經(jīng)驗(yàn),從教學(xué)內(nèi)容、教學(xué)方法、動(dòng)手實(shí)踐環(huán)節(jié)和考核方式多個(gè)方面探討了C++程序設(shè)計(jì)的課程教學(xué)改革。經(jīng)推廣實(shí)踐,證明這些措施能有效地提高學(xué)生的編程能力、自學(xué)能力、溝通能力和團(tuán)隊(duì)合作能力。
關(guān)鍵詞:C++;教學(xué)改革;教學(xué)實(shí)踐
中圖分類號(hào):G642
文獻(xiàn)標(biāo)識(shí)碼:B
1 引言
隨著面向?qū)ο蠹夹g(shù)的廣泛推廣,“C++程序設(shè)計(jì)”課程被越來越多地選為高校計(jì)算機(jī)及相關(guān)專業(yè)的基礎(chǔ)課程。我校從2003年起開始將其作為計(jì)算機(jī)專業(yè)各個(gè)方向的專業(yè)基礎(chǔ)課程,并從考察課逐漸成為考試課。該課程的教學(xué)目的有二:一是讓學(xué)生建立起面向?qū)ο蟮乃枷?,二是熟練掌握C++的基本語法能獨(dú)立進(jìn)行相關(guān)的開發(fā)。但是以往的教學(xué)經(jīng)驗(yàn)表明,很多學(xué)生學(xué)完課程之后并沒有達(dá)到預(yù)期的效果,不能將學(xué)習(xí)到的知識(shí)應(yīng)用于實(shí)踐,或無法將知識(shí)點(diǎn)連成知識(shí)面進(jìn)而形成知識(shí)體系。
2 改革實(shí)踐
傳統(tǒng)的程序設(shè)計(jì)語言的教學(xué)一般分為兩部分:課堂理論教學(xué)和上機(jī)實(shí)踐兩個(gè)環(huán)節(jié)。理論教學(xué)更多的是教師為主,學(xué)生更多的充當(dāng)“聽眾”的角色,跟著教師的思路去理解、記憶知識(shí)。上機(jī)實(shí)踐主要是用于消化課堂講授的知識(shí),偏重于編寫功能比較單一的“小”程序,其中僅涉及到少量的知識(shí)點(diǎn),同時(shí)留給學(xué)生的練習(xí)時(shí)間偏少,以至于對最后綜合型程序的編寫都無從下手。
我們采用一種全新的講、練、討論相互滲透結(jié)合的互動(dòng)教學(xué)模式。將課程仍分為兩大部分:課堂教學(xué)和上機(jī)實(shí)驗(yàn)。理論教學(xué)對課程的重點(diǎn)、難點(diǎn)進(jìn)行講授,課時(shí)約占課堂教學(xué)的3/4;其余的1/4組織學(xué)生進(jìn)行討論。上機(jī)實(shí)驗(yàn)按照課程開展及學(xué)生的層次分為三個(gè)層次,逐步深入遞進(jìn)。
2.1 課堂教學(xué)改革
2.1.1 “任務(wù)驅(qū)動(dòng)”的理論教授
每節(jié)課開始以后老師先提出問題——給出本節(jié)課結(jié)束后應(yīng)能夠解決的任務(wù)。教師將完成任務(wù)所需的知識(shí)點(diǎn)一一列出,要求學(xué)生指出未知的知識(shí)點(diǎn),教師著重講解新的知識(shí)點(diǎn)、重點(diǎn)及難點(diǎn),要求學(xué)生一起參與案例的完成,應(yīng)用所需知識(shí)點(diǎn)并最終給出示范案例。
整個(gè)課堂教學(xué)力求學(xué)生帶著問題去思考,利用知識(shí)點(diǎn)去分析解決問題,并熟練掌握知識(shí)點(diǎn)的應(yīng)用。
2.1.2 自學(xué)為主的知識(shí)面擴(kuò)展
布置談?wù)摰念}目或要求實(shí)現(xiàn)的任務(wù),要求學(xué)生分成2~3人小組在課下查找資料,針對題目在課堂進(jìn)行各種各樣的討論,或根據(jù)能力選擇任務(wù)并提出各自的解決方案,集體談?wù)摳鞣桨傅目尚行曰騼?yōu)劣性。
通過這種方式極大地提高學(xué)生的積極性,鼓勵(lì)學(xué)生利用各種方式自學(xué),對交叉學(xué)科、前沿學(xué)科有所了解;給學(xué)生提供了一個(gè)展示自己的舞臺(tái),并學(xué)習(xí)團(tuán)隊(duì)合作和溝通的重要性。
2.2 動(dòng)手實(shí)踐能力培養(yǎng)
2.2.1 基本知識(shí)點(diǎn)實(shí)驗(yàn)
基本知識(shí)點(diǎn)的應(yīng)用對于大多數(shù)同學(xué)需要經(jīng)歷三個(gè)步驟:一是“模仿”,完成與案例相似的程序,在模仿中鞏固和加深對新內(nèi)容的理解,同時(shí)老師可以對學(xué)生一對一講解未理解或掌握的內(nèi)容;二是“修改”,在第一步的基礎(chǔ)上進(jìn)行加工,激發(fā)學(xué)生自主學(xué)習(xí)的熱情。教師對關(guān)鍵實(shí)現(xiàn)提供指導(dǎo)性意見;三是“提高”,將一個(gè)有一定難度但未曾見過的問題交給學(xué)生,培養(yǎng)學(xué)生獨(dú)立解決問題的難度。教師給予啟發(fā)、引導(dǎo),激勵(lì)學(xué)生進(jìn)行創(chuàng)造性思維。
2.2.2 單元性實(shí)驗(yàn)
當(dāng)一個(gè)章節(jié)學(xué)習(xí)完畢后,安排一次單元性實(shí)驗(yàn)。該實(shí)驗(yàn)?zāi)軌驅(qū)⒈静糠謨?nèi)容甚至于前續(xù)內(nèi)容均應(yīng)用于其中。單元性實(shí)驗(yàn)的題目相對稍大,并具有一定的算法設(shè)計(jì)思想。設(shè)計(jì)過程中有以下幾個(gè)問題需要注意:
(1) 題目要貼近學(xué)生生活,便于學(xué)生理解,使得學(xué)生能通過實(shí)驗(yàn)解決現(xiàn)實(shí)生活中的問題。
(2) 綜合運(yùn)用關(guān)鍵知識(shí)點(diǎn),培養(yǎng)學(xué)生綜合應(yīng)用知識(shí)的能力。
(3) 適當(dāng)?shù)墓ぷ髁?。單元性?shí)驗(yàn)中要求每個(gè)學(xué)生能基本獨(dú)立完成,根據(jù)學(xué)生的個(gè)體差異,提供多層次的題目供學(xué)生進(jìn)行選擇。
考核時(shí)按照所選題目的難度進(jìn)行評分。例如基本級(難度最低)題目最終成績應(yīng)在60~70分之間,中級題目成績在70~80分之間,高級難度在80分以上。
2.2.3 綜合創(chuàng)新性實(shí)驗(yàn)
實(shí)踐的最后一個(gè)環(huán)節(jié)就是綜合創(chuàng)新性實(shí)驗(yàn)。要求學(xué)生2~3人自由組合,從教師給定題目中選擇感興趣并符合自身能力的題目進(jìn)行設(shè)計(jì)和編碼,并撰寫最終的文檔。
該階段的實(shí)驗(yàn)應(yīng)具有以下特點(diǎn):
(1) 題目是真實(shí)項(xiàng)目的簡化,由教師給出總體需求。學(xué)生對需求進(jìn)行分析,并確定開發(fā)目標(biāo),制定開發(fā)計(jì)劃。學(xué)生確定的開發(fā)目標(biāo)可以不局限于給定的需求,以此充分調(diào)動(dòng)學(xué)生的創(chuàng)新思維,培養(yǎng)創(chuàng)新能力。
(2) 學(xué)生分組后由組長負(fù)責(zé)分工和給定工作量衡量標(biāo)準(zhǔn),培養(yǎng)團(tuán)隊(duì)合作。
(3) 學(xué)生按照開發(fā)計(jì)劃獨(dú)立完成編碼工作。教師的作用僅為答疑、開發(fā)過程監(jiān)控以及對共性問題進(jìn)行總結(jié)與歸納。在此過程中,學(xué)生分析問題,解決問題的能力將得到有效鍛煉。
(4) 涉及到課堂沒有接觸過的知識(shí)點(diǎn)時(shí),鼓勵(lì)學(xué)生利用各種資源去搜集資料,分析資料尋找答案,培養(yǎng)學(xué)生自主學(xué)習(xí)能力和解決問題的能力。
最后的考核通過答辯的形式完成,答辯評委可以由老師和學(xué)生代表共同擔(dān)任。最終成績應(yīng)該包括:答辯、文檔、源代碼、功能及運(yùn)行結(jié)果的考評。個(gè)人成績與小組成績密切相關(guān),先確定小組成員的最高分,根據(jù)組長對組員完成工作情況的衡量給組員打分。督促所有組員能參與綜合創(chuàng)新性實(shí)驗(yàn)并關(guān)心整個(gè)團(tuán)隊(duì)的成績。
2.3 考核和成績評定
作為一門考試課程,盡管強(qiáng)調(diào)課程結(jié)束后學(xué)生應(yīng)用知識(shí)的能力,但筆試也是必不可少的一個(gè)環(huán)節(jié)。但是針對平時(shí)大量的實(shí)踐環(huán)節(jié),最終將期末成績分成兩大塊:筆試成績和平時(shí)成績。筆試成績占期末成績的60%,其中除了基礎(chǔ)知識(shí)點(diǎn)的考察,還增加了大量的編程題目,將知識(shí)的應(yīng)用仍放在重要地位。平時(shí)成績由4部分組成:上課表現(xiàn)(10%)+基本知識(shí)點(diǎn)實(shí)驗(yàn)(10%)+單元性實(shí)驗(yàn)(10%)+綜合創(chuàng)新性實(shí)驗(yàn)(10%),其中上課表現(xiàn)包括上課出勤及討論課發(fā)言表現(xiàn)。通過這種成績的分布,督促學(xué)生重視平時(shí)的學(xué)習(xí),改變以往考前“臨時(shí)抱佛腳”的做法。
2.4 課堂教學(xué)的延伸
課堂教學(xué)對于提高學(xué)生的知識(shí)掌握、熟練運(yùn)用知識(shí)還遠(yuǎn)遠(yuǎn)不夠。我們應(yīng)更多地將與學(xué)生的溝通互動(dòng)擴(kuò)展到課堂教學(xué)之外。通過以下幾種方式從多渠道延伸課堂教學(xué):
(1) 將教師的博客作為與學(xué)生交流的主要場所,可以將課件、程序、電子教案等共享。開辟專門的板塊,將學(xué)習(xí)過程中的體會(huì)心得與學(xué)生分享,并上傳多種學(xué)習(xí)參考資料,幫助學(xué)生擴(kuò)展知識(shí)面。留言板方便學(xué)生間接地與教師進(jìn)行交流和探討。
(2) 組織學(xué)習(xí)興趣高,成績良好的學(xué)生成立創(chuàng)新小組,在教師指導(dǎo)下,關(guān)注新技術(shù)的發(fā)展動(dòng)態(tài),選擇感興趣的方面進(jìn)行深入研究,通過備戰(zhàn)各類比賽,考取認(rèn)證等方式,培養(yǎng)學(xué)生研究性和創(chuàng)新性學(xué)習(xí)能力。
(3) 建立專門的技術(shù)談?wù)換Q群,建立不間斷的學(xué)習(xí)答疑氛圍,使學(xué)生能通過網(wǎng)絡(luò)幫助別人的同時(shí)也提升自我。
3 結(jié)論
通過一個(gè)學(xué)期的改革實(shí)踐,“C++程序設(shè)計(jì)”課程取得了良好的教學(xué)效果,越來越多的同學(xué)適應(yīng)并積極參與到知識(shí)能力的應(yīng)用培養(yǎng)過程中來,動(dòng)手能力和自學(xué)能力得到了較大的提升,教學(xué)質(zhì)量有所提高。
參考文獻(xiàn):
[1] 白日霞. 創(chuàng)新教育評價(jià)體系的構(gòu)建與實(shí)踐[J]. 中國高教研究,2006,(6).
[2] 張錦祥. 高級程序設(shè)計(jì)語言課程教學(xué)改革與實(shí)踐[J]. 浙江教育學(xué)院學(xué)報(bào),2007,(7).
[3] 韓愷,賈曉輝,劉鳳華. JAVA語言實(shí)踐教學(xué)的改革探索[J]. 計(jì)算機(jī)教育,2008,(6).