[摘 要]針對當(dāng)前C語言程序設(shè)計教學(xué)過程中存在的常見問題,提出采用分層教學(xué)和任務(wù)驅(qū)動模式進行教學(xué)改革。在教學(xué)過程中因材施教,強調(diào)學(xué)生的自主學(xué)習(xí)和主動創(chuàng)新精神,提高學(xué)生理論結(jié)合實際能力;同時以知識點為中心,圍繞具體任務(wù)進行授課的方式,提高學(xué)生的學(xué)習(xí)主動性與編程技能。
[關(guān)鍵詞]C程序語言 分層教學(xué) 任務(wù)驅(qū)動
[中圖分類號] G423.07 [文獻標(biāo)識碼] A [文章編號] 2095-3437(2013)22-0081-02
一、課程教學(xué)現(xiàn)狀分析
C語言程序設(shè)計是高校計算機專業(yè)的核心基礎(chǔ)課程,很多學(xué)校都開了C語言公選課,將其作為學(xué)生學(xué)習(xí)程序設(shè)計的一個入門。學(xué)習(xí)C語言需要掌握的抽象概念和語法規(guī)則較多,同時又需要通過實踐培養(yǎng)編程實用技巧。由于計算機專業(yè)必修課程(例如C++,數(shù)據(jù)結(jié)構(gòu)等)都需要具備一定的C語言基礎(chǔ),所以對C語言的掌握程度直接影響著后續(xù)課程的教學(xué)效果。[1,2]長期以來C語言程序設(shè)計課程的教學(xué)改革一直都在許多高校中探索和實踐,提出了項目教學(xué)法、[3]案例教學(xué)法、[4]自主學(xué)習(xí)模式[5]的教學(xué)理念。但在實際的C語言課程教學(xué)中,諸多因素導(dǎo)致教學(xué)效果不理想,具體有以下幾方面:
首先,學(xué)生程序設(shè)計基礎(chǔ)參差不齊。一部分學(xué)生以前沒有接觸過程序,有些學(xué)生對學(xué)習(xí)程序不感興趣,有些學(xué)生沿用看書加背誦學(xué)習(xí)方法,他們感到枯燥厭煩,跟不上教學(xué)進度;還有一部分學(xué)生上課時積極主動,對編程產(chǎn)生較大興趣,不但能夠完全掌握老師講的課程內(nèi)容,而且能夠積極查閱課外程序資料,教師講授的課堂內(nèi)容不能夠滿足這部分學(xué)生。傳統(tǒng)的教學(xué)方式造成教師在教學(xué)無法兼顧這兩類學(xué)生。學(xué)期結(jié)束后,第一類學(xué)生普遍感到程序設(shè)計課程晦澀難懂,不會應(yīng)用,無從下手,因此失去了學(xué)習(xí)熱情。
其次,傳統(tǒng)教學(xué)模式影響教學(xué)效果。在傳統(tǒng)的教學(xué)中,教師往往以課程的理論知識點為主線組織教學(xué),依照從講解概念起,接著講解語法語句,最后舉例加以細(xì)化。部分教師缺乏對該門課程的整體性把握,在教學(xué)上過多注重語法結(jié)構(gòu)的知識,沒有把學(xué)生放在主體的位置上,師生間的互動很少。甚至有些教材內(nèi)容的結(jié)構(gòu)安排缺乏合理性,語法部分編寫過于繁瑣,學(xué)生接受的是枯燥無味的理論規(guī)則,導(dǎo)致學(xué)習(xí)沒有積極性,難以調(diào)動學(xué)生學(xué)習(xí)的主動性。教學(xué)觀念、教學(xué)手段和方法以及考核形式等都比較陳舊,不能適應(yīng)新形勢下的教學(xué)需求,學(xué)生學(xué)習(xí)效率非常低,無法將所學(xué)知識運用到實際中。
最后,實踐環(huán)節(jié)薄弱。上機實踐是學(xué)習(xí)編程語言的重要組成部分。實際授課中,重視課堂教學(xué)而輕視上機實踐,理論課上既要講基本的語法知識又要講編程方法,占用了過多的課堂時間。實驗課上進行基本的驗證性實驗,學(xué)生機械式的運行程序,無法真正學(xué)會如何編寫和調(diào)試程序,使得理論教學(xué)和實踐教學(xué)脫節(jié)。通常情況下,C語言程序設(shè)計目前的考核方式主要以筆試為主,主要考查語法和基本的邏輯推導(dǎo)能力,無法進行學(xué)生動手實踐能力的考查,從而造成了大部分學(xué)生即使理論知識掌握較好,卻不會上機編程。
二、C課程教學(xué)方法改革探索
(一)采用分層教學(xué)模式
首先,對象分層。新生入學(xué)后,系部首先通過問卷的形式對新生的計算機基礎(chǔ)技能、學(xué)習(xí)計算機的興趣以及課內(nèi)外學(xué)習(xí)方式等情況進行了調(diào)查,并進行了計算機水平摸底測試。根據(jù)學(xué)生的實際測試水平,打破以班為集體的傳統(tǒng)教學(xué)模式,將他們分為不同的層次分別授課。將程序設(shè)計興趣較強、數(shù)學(xué)邏輯基礎(chǔ)較好、有一定編程基礎(chǔ)并且測試成績較好的學(xué)生編入A層;將測試成績較差并且沒有編程基礎(chǔ)的學(xué)生編入C層;其余多數(shù)學(xué)生編入B層。教師依據(jù)各層學(xué)生進行因材施教,即針對學(xué)習(xí)者不同的學(xué)習(xí)能力、態(tài)度等個體差異施行不同的教學(xué)模式,實際上是使三層學(xué)生各有側(cè)重、共同提高的一種教學(xué)方法。
其次,教學(xué)分層。分層授課是分層教學(xué)成功實施的關(guān)鍵,學(xué)生是教學(xué)活動中學(xué)習(xí)的主體,教師需要對所教層次學(xué)生的編程水平有準(zhǔn)確的認(rèn)識,才能真正激發(fā)其學(xué)習(xí)激情,培養(yǎng)其學(xué)習(xí)能力,促進課堂教學(xué)質(zhì)量的提高。A層學(xué)生一般理解力較強,學(xué)習(xí)具有主動性,教師可以引導(dǎo)他們除了掌握教材知識點外,推薦課外參考書,盡快參與軟件開發(fā)項目或興趣小組。B層的學(xué)生通常情況下能夠掌握基本的語法規(guī)則及編程方法,但是對編程缺乏總體思路,就需要教師及時將學(xué)生學(xué)過的知識加以復(fù)習(xí)總結(jié),在掌握教學(xué)大綱要求的知識點外可通過綜合實訓(xùn)練習(xí)進行編程水平提升。對C層就要通過精心設(shè)計教學(xué)內(nèi)容、耐心的作業(yè)輔導(dǎo)、適時的課后交流激發(fā)他們的學(xué)習(xí)興趣和信心。分層教學(xué)從各層學(xué)生的實際出發(fā),“因人制宜”,關(guān)注各層次學(xué)生在學(xué)習(xí)方法上的差異,給予學(xué)生不同級別的指導(dǎo),刺激學(xué)生向高層次目標(biāo)努力,從而大面積地提高教學(xué)質(zhì)量。此外,在實施過程中也要注意保護學(xué)生的自尊心,以淡化各層間的人為界線,避免分層帶來的負(fù)效應(yīng)。
最后,分層評價。分層評價是針對各類學(xué)生的學(xué)習(xí)水平,建立一套完善科學(xué)的評價體系激發(fā)學(xué)生學(xué)習(xí)興趣、優(yōu)化學(xué)習(xí)方法、樹立學(xué)生的自信心,促使各成其才。對A、B、C 三層的學(xué)生不同的目標(biāo)要求體現(xiàn)在評價體系中。對平時成績的考核對應(yīng)不同層次,A層同學(xué)分組考核,分工協(xié)作完成預(yù)設(shè)項目,根據(jù)小組中的表現(xiàn)進行組員互評和老師評價相結(jié)合的方式。B層和C層的同學(xué)則通過上機實操進行編程水平的測試。期終試卷可在同一份試卷上進行分層,分別對應(yīng)于不同層次。試卷分成基礎(chǔ)和提高兩部分。基礎(chǔ)部分主要考核學(xué)生是否達到基本教學(xué)大綱要求,這部分是三個層次學(xué)生共同的必答卷,對于三個層次的學(xué)生同分但不同值,成績作為課程的考核分。例如編程題標(biāo)注10分,則如果A層學(xué)生做對考核分加10,B層和C層學(xué)生做對加15。第二部分為提高卷,也是A層學(xué)生的必答卷,B、C層學(xué)生的選答卷,成績作為課程的考核分。分層考核的目的是使各層次的學(xué)生經(jīng)過努力都能獲得較高的分?jǐn)?shù),獲得成功的體驗,激發(fā)學(xué)生的求知欲。
(二)基于實踐導(dǎo)向的任務(wù)驅(qū)動教學(xué)
以實踐為導(dǎo)向在教學(xué)活動中要求,以專業(yè)能力要求為依據(jù),將“教、學(xué)、練”一體化的教學(xué)模式融入教學(xué)課程設(shè)計中。根據(jù)行業(yè)需要的知識、技能確定課程內(nèi)容的選取與安排,課程設(shè)計是采用真實項目貫穿教學(xué)全程,項目按照內(nèi)容分成若干模塊,實現(xiàn)將化整為零進行學(xué)習(xí)。
任務(wù)驅(qū)動下分組學(xué)習(xí)討論是一種非常有效的方式。讓學(xué)生發(fā)揮主動性自由分組,依據(jù)編程能力水平給每組指派一名組長,上課時以組為單位,分析、討論項目任務(wù),具體包括需要收集資料、項目進度以及具體的工作任務(wù)。小組長主要負(fù)責(zé)小組內(nèi)任務(wù)分配、協(xié)調(diào)組內(nèi)成員等工作,老師輪流在每個小組旁聽學(xué)生的討論并接受學(xué)生的咨詢。
教師所指定的任務(wù)主要包括兩類內(nèi)容:一類是課本課后習(xí)題,并對完成任務(wù)所必需的知識點進行必要的說明;另一類是具有實用性的項目任務(wù)實例,讓學(xué)生更直觀地理解所學(xué)知識應(yīng)該如何與實踐相聯(lián)系。第二類任務(wù)需要教師進行設(shè)計,盡可能具有綜合性、可分割性,適合小組討論解決及協(xié)作完成。
制定合理的考核標(biāo)準(zhǔn)來綜合衡量學(xué)生的學(xué)習(xí)狀況是激發(fā)學(xué)生進行協(xié)作學(xué)習(xí)的動力。當(dāng)學(xué)生完成任務(wù)后,先在小組成員之間進行任務(wù)完成情況評論。最后由老師對每組學(xué)生的任務(wù)完成情況進行總結(jié)講評,對其中的不足進行點評,對比較好的做法給予鼓勵,并據(jù)此對每個學(xué)生計算平時成績,將小組整體得分與組內(nèi)個人得分進行綜合。課程采用綜合測試考評方式,突破單一的閉卷考試方式,將平時作業(yè)、課堂討論成績、與期末考試相結(jié)合。
三、結(jié)束語
C語言是一門實踐性很強、熱門的高級編程語言。根據(jù)目前的教學(xué)現(xiàn)狀,分析和總結(jié)教與學(xué)的不足,通過分層模式教學(xué)改革和以實踐為導(dǎo)向的任務(wù)驅(qū)動教學(xué)探索,不斷地提高課程的教學(xué)效率,使課程更具科學(xué)性,把學(xué)生的主動性充分地調(diào)動起來,讓學(xué)生在學(xué)習(xí)中嘗到樂趣。
[ 參 考 文 獻 ]
[1] 楊理云.“C 語言程序設(shè)計”教學(xué)方法探索[J].中國成人教育,2007,(5).
[2] 丁群,文明瑤.項目教學(xué)法在C語言教學(xué)中的應(yīng)用[J].電腦知識與技術(shù): 學(xué)術(shù)交流,2012,8(3).
[3] 陳洪超.項目教學(xué)法在“C語言程序設(shè)計”課程中的應(yīng)用[J].重慶電力高等專科學(xué)校學(xué)報,2012,17(3).
[4] 左永文.案例教學(xué)法在“C語言程序設(shè)計”課程中的應(yīng)用[J].科技創(chuàng)新導(dǎo)報, 2012,(18).
[5] 陳剛,朱曉燕.江漢大學(xué)“C語言程序設(shè)計”課程教學(xué)改革[J].計算機光盤軟件與應(yīng)用,2012,(7).
[責(zé)任編輯:左 蕓]