馮滿堂
?
基于三位一體的五年制高職“C語言程序設(shè)計(jì)”課堂教學(xué)研究
馮滿堂
摘要:針對五年制高職“C語言程序設(shè)計(jì)”課程理論深、實(shí)踐性強(qiáng)、傳統(tǒng)課堂教學(xué)無法兼顧理論性和實(shí)踐性等特點(diǎn),嘗試提出一種基于三位一體的五年制高職“C語言程序設(shè)計(jì)”課堂教學(xué)新模式,并在課堂中加以應(yīng)用,為五年制高職“C語言程序設(shè)計(jì)”課堂教學(xué)改革進(jìn)行有益探索。
關(guān)鍵詞:五年制高職;C語言程序設(shè)計(jì);課堂教學(xué);三位一體
C語言是一種語言簡潔、使用靈活、移植性好,既具有匯編語言的特點(diǎn),又具有高級語言特點(diǎn)的計(jì)算機(jī)程序設(shè)計(jì)語言,是計(jì)算機(jī)專業(yè)學(xué)生必學(xué)的一門課程。鑒于此,“C語言程序設(shè)計(jì)”也成為江蘇省五年制高職軟件技術(shù)專業(yè)的一門專業(yè)骨干課程,旨在培養(yǎng)學(xué)生掌握C語言的基本語法,掌握程序設(shè)計(jì)的基本思想、基本概念和基本方法,并能運(yùn)用所學(xué)的知識與技術(shù)對一般問題進(jìn)行分析和程序設(shè)計(jì),編寫出高效的C語言應(yīng)用程序。同時(shí),該門課程也是后續(xù)“數(shù)據(jù)結(jié)構(gòu)”、“JAVA程序設(shè)計(jì)”、“C#程序設(shè)計(jì)”等課程的先導(dǎo)課程。
多年來,職業(yè)教育的課程教學(xué)模式是本科或?qū)?苽鹘y(tǒng)教學(xué)模式的簡化,而在傳統(tǒng)的教學(xué)模式中,教師以講授C語言的語法知識為主,再配合傳授一些編程技巧和答題技巧,不利于培養(yǎng)學(xué)生的邏輯思維能力、抽象能力和基本程序設(shè)計(jì)能力。再加上C語言涉及的概念比較多且雜,規(guī)則靈活且繁,編程時(shí)容易出錯(cuò),造成很多五年制高職生學(xué)習(xí)這門課程有畏難情緒。[1]如何有效提高該門課程的教學(xué)效課,提高學(xué)生的學(xué)習(xí)興趣和積極性,成為當(dāng)下五年制高職“C語言程序設(shè)計(jì)”課程教學(xué)的難點(diǎn)。為了在五年制高職中有效開展“C語言程序設(shè)計(jì)”課程的教學(xué),筆者有效結(jié)合了“C語言程序設(shè)計(jì)”這門課的特點(diǎn)和五年制高職生的學(xué)情,提出了理論啟發(fā)式傳授,上機(jī)圍繞任務(wù)開展、項(xiàng)目最后實(shí)踐的三位一體的五年制高職“C語言程序設(shè)計(jì)”課程教學(xué)的新模式,以期為五年制高職“C語言程序設(shè)計(jì)”課程教學(xué)改革進(jìn)行有益的嘗試。
傳統(tǒng)的C語言教學(xué)模式過分注重語句、語法等細(xì)節(jié)的教學(xué),理論繁瑣,內(nèi)容枯燥,知識乏味,形式單一,只注重理論知識,無法培養(yǎng)學(xué)生的程序設(shè)計(jì)能力。再加上五年制高職的學(xué)生都是中考失敗者,無論在學(xué)習(xí)能力還是學(xué)習(xí)習(xí)慣方面都有所欠缺。為了有效改善高職程序教學(xué)的效果,近幾年很多高職院校對傳統(tǒng)的課堂教學(xué)模式進(jìn)行了改革,采用了項(xiàng)目化教學(xué)、任務(wù)驅(qū)動(dòng)教學(xué)、做中學(xué)等理實(shí)一體化的教學(xué)模式。就以五年制高職“C語言程序設(shè)計(jì)”這門課程為例,很多職業(yè)學(xué)校從傳統(tǒng)的理論在教室、實(shí)驗(yàn)在機(jī)房、理實(shí)分開、實(shí)驗(yàn)從屬于課堂的教學(xué)模式全部放在實(shí)驗(yàn)機(jī)房上課,教學(xué)模式采用了以項(xiàng)目為載體、以任務(wù)為驅(qū)動(dòng)的理實(shí)一體的方式。先把一個(gè)完整的項(xiàng)目拆分成若干個(gè)小任務(wù),讓小任務(wù)來承載相應(yīng)的知識點(diǎn),上課時(shí)圍繞著這個(gè)小任務(wù)先把需要的知識講一下,然后圍繞著這個(gè)任務(wù)或此任務(wù)的擴(kuò)展任務(wù),讓學(xué)生自行上機(jī)編程實(shí)驗(yàn)。這種教學(xué)模式表面看很好的適應(yīng)了職業(yè)教育理實(shí)一體、做中學(xué)、做中練的職教新模式,但實(shí)際的教學(xué)效果并不理想。究其原因主要是學(xué)生的基礎(chǔ)比較差,不能很好的掌握C語言程序的語法,不能獨(dú)立的完成教師所布置的任務(wù)。為了完成這個(gè)任務(wù),很多學(xué)生會(huì)采用把老師布置的或書上任務(wù)敲一遍,運(yùn)行沒有錯(cuò)誤,就認(rèn)為自己完成了課堂任務(wù),同時(shí),也認(rèn)為自己學(xué)會(huì)了。而實(shí)際上根本就沒有學(xué)會(huì),因?yàn)樗麄兏揪筒凰伎歼@個(gè)程序是怎么來的?程序的執(zhí)行流程是什么?為什么需要這樣寫?時(shí)間一長,“C語言程序設(shè)計(jì)”課變成了錄入課,對學(xué)生來講只是學(xué)過這門課,根本就沒有學(xué)會(huì)。
針對當(dāng)下五年制高職“C語言程序設(shè)計(jì)”課堂教學(xué)要么實(shí)踐教育和理論教育平行,沒有把實(shí)踐和理論融為一體,要么教學(xué)比較關(guān)注個(gè)別零散的知識技能,就是有任務(wù)有項(xiàng)目也是一些為了知識點(diǎn)的講授而設(shè)置的死任務(wù)死項(xiàng)目,學(xué)生學(xué)完后要么什么也沒有學(xué)會(huì),課程淪為文字錄入課,要么只會(huì)該任務(wù)該項(xiàng)目的制作,根本就實(shí)現(xiàn)不了五年制高職“C語言程序設(shè)計(jì)”課程是培養(yǎng)學(xué)生運(yùn)用計(jì)算機(jī)解決實(shí)際問題方法的目的。為了有效的開展五年制高職“C語言程序設(shè)計(jì)”課程的課堂教學(xué),本文有效結(jié)合了“C語言程序設(shè)計(jì)”這門課的特點(diǎn)和五年制高職生的學(xué)情,提出了理論啟發(fā)式傳授、上機(jī)圍繞任務(wù)開展、項(xiàng)目最后實(shí)踐的三位一體的五年制高職“C語言程序設(shè)計(jì)”課堂教學(xué)的新模式,具體的模式如圖1所示。
(一)理論啟發(fā)式傳授
“C語言程序設(shè)計(jì)”是五年制高職學(xué)生所學(xué)習(xí)的第一門程序設(shè)計(jì)課程,教師剛開始必須把大量的關(guān)于C語言的基本概念、術(shù)語、規(guī)則、執(zhí)行過程等理論知識傳授給學(xué)生,學(xué)生只有掌握了這些理論知識,才能靈活運(yùn)用這些理論知識去編程解決現(xiàn)實(shí)中的問題。理論知識的學(xué)習(xí)是必需的,針對這部分理論知識,教師不能僅僅是提供信息。如果僅僅是呈現(xiàn)信息,然后加上基于問題型的教學(xué)策略,也是無濟(jì)于事的,并不能提高多少教學(xué)效益,其原因是學(xué)生不能構(gòu)建起適當(dāng)?shù)男睦韴D式。有鑒于此,[2]針對C語言程序設(shè)計(jì)的理論教學(xué)應(yīng)該采用啟發(fā)式的教學(xué)方法。所謂啟發(fā)式的教學(xué)是指以學(xué)生為中心,以逐層深入的問題為引導(dǎo)。教師提出具有遞進(jìn)性的問題,啟發(fā)學(xué)生思考解決問題的方法,學(xué)生應(yīng)用所學(xué)知識解決問題或者發(fā)現(xiàn)所學(xué)知識解決不了的問題,從而引起對新知識的重視,促進(jìn)學(xué)生對新知識的主動(dòng)建構(gòu)。教師在講授“C語言程序設(shè)計(jì)”理論部分知識時(shí),可借助于多媒體課件,把教學(xué)內(nèi)容直觀、形象、生動(dòng)的演示出來。同時(shí),C語言本身是一門思維很縝密的理論課,教師在上課采用課件的同時(shí),穿插使用黑板板書,將知識的演繹過程強(qiáng)調(diào)出來,如講授循環(huán)知識、方法之間的值傳遞和址傳遞時(shí),借助于黑板比僅使用課件的教學(xué)效果要好很多。[3]
(二)上機(jī)圍繞任務(wù)開展
圖1 三位一體的教學(xué)模式
“C語言程序設(shè)計(jì)”是一門實(shí)踐性很強(qiáng)的課程,理論和實(shí)踐緊密結(jié)合,學(xué)生在課堂學(xué)完理論知識,必須會(huì)用所學(xué)的理論知識通過編程來解決生活中的實(shí)際問題,只有這樣,才算真正學(xué)會(huì)了“C語言程序設(shè)計(jì)”這門課。因此,必須抓好上機(jī)實(shí)驗(yàn)教學(xué)環(huán)節(jié)。針對此環(huán)節(jié),筆者采用了上機(jī)實(shí)驗(yàn)圍繞任務(wù)開展的教學(xué)模式。根據(jù)梅瑞爾的首要教學(xué)原理,[4]任何教學(xué)活動(dòng),不管是一節(jié)課還是一個(gè)單元甚至是一門課程,都應(yīng)該以任務(wù)為中心或面向完整任務(wù)為宗旨,即當(dāng)學(xué)習(xí)者獲取的知識和原理來源于現(xiàn)實(shí)世界中的任務(wù)時(shí)才能促進(jìn)學(xué)習(xí),獲得較好的教學(xué)效果。面向完整任務(wù)是與聚焦教學(xué)目標(biāo)、學(xué)會(huì)解決問題緊密聯(lián)系在一起的,任務(wù)不能簡單地歸納為學(xué)習(xí)內(nèi)容,內(nèi)容是載體,任務(wù)才是宗旨。在選取教學(xué)任務(wù)時(shí),應(yīng)盡量貼近學(xué)生的現(xiàn)實(shí)生活,解決生活中遇到的問題是學(xué)習(xí)的終極目標(biāo),學(xué)習(xí)就是為了解決問題的,這些問題不僅包括教材中所布置的練習(xí),同時(shí)更要求學(xué)習(xí)者能夠敏銳的發(fā)現(xiàn)和解決生活中所蘊(yùn)涵的問題。
任務(wù)選取不要選取單一的工作任務(wù),應(yīng)對聚焦的完整任務(wù)進(jìn)行適當(dāng)?shù)男蛄谢?,也就是對?fù)雜的任務(wù)進(jìn)行分解成一系列逐漸增加復(fù)雜度的任務(wù),分解后的任務(wù)都應(yīng)是相對獨(dú)立且完整,不應(yīng)是較大任務(wù)的一個(gè)操作步驟。[5]為了減少學(xué)習(xí)者在認(rèn)知上的負(fù)擔(dān),每個(gè)后續(xù)任務(wù)最好引入少量的新知識,也就是說第一個(gè)任務(wù)最簡單,后續(xù)任務(wù)包括前面任務(wù)的相似知識點(diǎn),并增加新的知識點(diǎn),最后一個(gè)任務(wù)應(yīng)該包括教學(xué)目標(biāo)所需要的所有知識點(diǎn)。如果學(xué)習(xí)任務(wù)比較復(fù)雜,可以提高單個(gè)工作任務(wù)的難度,再去接觸更加復(fù)雜的任務(wù)。針對五年制高職“C語言程序設(shè)計(jì)”雙重循環(huán)部分的知識,上機(jī)實(shí)驗(yàn)時(shí)把教學(xué)任務(wù)聚焦為輸出九九乘法表,并把任務(wù)序列化為以下6個(gè)子任務(wù):輸出一行七列的星號圖形、輸出五行七列的矩形星號圖形、輸出九行九列的矩形星號圖形、輸出九行九列直角的星號圖形、輸出九九乘法表。以上6個(gè)任務(wù)從簡單到復(fù)雜,并且獨(dú)立完整,后一個(gè)任務(wù)包含前一個(gè)任務(wù)的知識點(diǎn)并增加新的知識點(diǎn),把前面所學(xué)的單層循環(huán)、雙重循環(huán)的知識很好的應(yīng)用起來,解決輸出九九乘法這個(gè)任務(wù),能取得較好的教學(xué)效果。
(三)項(xiàng)目最后實(shí)踐
如果說理論啟發(fā)式傳授是教會(huì)學(xué)生理解C語言,上機(jī)實(shí)驗(yàn)圍繞任務(wù)開展是輔導(dǎo)學(xué)生應(yīng)用C語言,到了項(xiàng)目最后實(shí)踐階段就是考察學(xué)生運(yùn)用C語言的時(shí)候了。隨著江蘇省五年制高職4.5+0.5學(xué)制的執(zhí)行,每門專業(yè)課都會(huì)在學(xué)期末安排一到兩周的實(shí)訓(xùn)周,針對“C語言程序設(shè)計(jì)”這門課程則安排項(xiàng)目綜合實(shí)訓(xùn)。通過在實(shí)訓(xùn)周安排項(xiàng)目實(shí)訓(xùn),既很好的檢測了學(xué)生前面所學(xué)知識情況,又培養(yǎng)了學(xué)生運(yùn)用C語言編程來解決崗位中實(shí)際問題的方法和步驟,為提高和擴(kuò)展職業(yè)空間打下了堅(jiān)實(shí)基礎(chǔ)。
項(xiàng)目的選取決定著項(xiàng)目實(shí)訓(xùn)的效果,選取的項(xiàng)目不能脫離教學(xué)內(nèi)容,也要考慮學(xué)生的接受能力。選取的項(xiàng)目必須貼合學(xué)生實(shí)際,具有現(xiàn)實(shí)背景,是學(xué)生在生活中能碰到,需要使學(xué)生了解學(xué)習(xí)的針對性,并使學(xué)生有興趣和信心完成項(xiàng)目。針對五年制高職學(xué)生的特點(diǎn)和五年制高職“C語言程序設(shè)計(jì)”課程的教學(xué)目標(biāo)和教學(xué)內(nèi)容,“C語言程序設(shè)計(jì)”這門課程選取了學(xué)生很熟悉的學(xué)生成績管理系統(tǒng)的制作作為實(shí)訓(xùn)項(xiàng)目。該項(xiàng)目能夠較好的把C語言程序設(shè)計(jì)的主要知識點(diǎn)涵蓋在內(nèi),學(xué)生通過前面所學(xué)知識能夠?qū)崿F(xiàn)或優(yōu)化該項(xiàng)目的功能,最后完成一個(gè)完整的項(xiàng)目案例,學(xué)生學(xué)習(xí)技術(shù)的同時(shí),又獲得項(xiàng)目的開發(fā)經(jīng)驗(yàn),一舉兩得。該項(xiàng)目主要拆分成如下幾個(gè)子任務(wù):學(xué)生成績管理系統(tǒng)界面設(shè)計(jì)(順序結(jié)構(gòu)程序設(shè)計(jì))、學(xué)生成績管理系統(tǒng)主菜單功能實(shí)現(xiàn)(分支結(jié)構(gòu)程序設(shè)計(jì))、學(xué)生成績管理系統(tǒng)主菜單重復(fù)選擇實(shí)現(xiàn)(循環(huán)結(jié)構(gòu)程序設(shè)計(jì))、用數(shù)組實(shí)現(xiàn)學(xué)生成績管理系統(tǒng)(數(shù)組)、用函數(shù)改善學(xué)生成績管理系統(tǒng)(函數(shù))、用結(jié)構(gòu)體優(yōu)化學(xué)生成績管理系統(tǒng)(結(jié)構(gòu)體)和用文件完善學(xué)生成績管理系統(tǒng)(文件)等7個(gè)子任務(wù)。[6]在每個(gè)任務(wù)開展教學(xué)的過程中,要盡可能讓學(xué)生獨(dú)立完成任務(wù),讓學(xué)生把自己所學(xué)的知識整合到任務(wù)中,去解決任務(wù)中的問題,并公開的展示自己所掌握的知識技能,并進(jìn)行學(xué)習(xí)者之間的相互評論。
參考文獻(xiàn):
[1]胡建榮,羅杰紅.高職C語言程序設(shè)計(jì)課程實(shí)踐教學(xué)體系的設(shè)計(jì)[J].計(jì)算機(jī)教育,2010(10):150-152.
[2]盛群力,馬蘭.走向3E教學(xué)——三述首要教學(xué)原理[J].遠(yuǎn)程教育雜志,2006(4):17-24.
[3]張玉成,譚露明. C語言理論教學(xué)和實(shí)踐教學(xué)的探討[J].現(xiàn)代經(jīng)濟(jì)信息,2009(15):310-311.
[4]盛群力.五星教學(xué)過程初探[J].課程·教材·教法, 2009 (1):35-55.
[5]馮滿堂.首要教學(xué)原理在高職JAVA程序設(shè)計(jì)教學(xué)中的應(yīng)用探討[J].軟件導(dǎo)刊(教育技術(shù)), 2015(6):6-7.
[6]高維新. C語言程序設(shè)計(jì)項(xiàng)目教程[M].北京:人民郵電出版社, 2010.
[責(zé)任編輯陳國平]
中圖分類號:G712
文獻(xiàn)標(biāo)識碼:A
文章編號:1674-7747(2016)06-0043-03
作者簡介:馮滿堂,男,南京市莫愁中等專業(yè)學(xué)校講師,碩士研究生,主要研究方向?yàn)槁殬I(yè)教育課程改革和教學(xué)設(shè)計(jì)。
基金項(xiàng)目:江蘇省職業(yè)技術(shù)教育學(xué)會(huì)2015-2016年度職業(yè)教育研究立項(xiàng)課題(項(xiàng)目編號:XHDY2015066)