馬趙艷
摘要:C語言作為工科類基礎(chǔ)課程,對(duì)學(xué)生的邏輯思維能力要求較高,教師需要精心制定有效的教學(xué)計(jì)劃。本文闡述從項(xiàng)目入手的教學(xué)方法,是在項(xiàng)目牽引及老師的指導(dǎo)下使學(xué)生自主學(xué)習(xí),引導(dǎo)學(xué)生互相交流發(fā)散思維,提高編程能力,構(gòu)建軟件工程項(xiàng)目的思想,達(dá)到較好的教學(xué)效果。
關(guān)鍵詞:C語言;項(xiàng)目;教學(xué)
信息技術(shù)和計(jì)算機(jī)應(yīng)用的不斷發(fā)展,眾多高校都將c語言程序設(shè)計(jì)作為工科類專業(yè)的一門基礎(chǔ)課程。C語言仍然是當(dāng)今世界非常流行的編程語言之一,它既有低級(jí)語言又有高級(jí)語言的特點(diǎn),而且能寫出執(zhí)行效率比較高的程序[1]。能夠應(yīng)用于很多方面,在眾多專業(yè)領(lǐng)域應(yīng)用廣泛。
但在現(xiàn)實(shí)高校教學(xué)工作中,C語言課程教學(xué)的學(xué)習(xí)重點(diǎn)還放在基礎(chǔ)語言結(jié)構(gòu)本身上,并沒有軟件工程項(xiàng)目的概念,以至于學(xué)生學(xué)完這門課程仍然對(duì)抽象概念不清晰,對(duì)如何應(yīng)用更不清楚,更不能體會(huì)到學(xué)習(xí)編程語言的樂趣以及熟練應(yīng)用完成項(xiàng)目后帶來的成就感[2]。而項(xiàng)目訓(xùn)練學(xué)生能夠融會(huì)貫通地掌握課程知識(shí),使學(xué)生知道這門課程能“干什么”,提高學(xué)生分析解決現(xiàn)實(shí)問題的能力[3]。因此,在高等院校的教學(xué)工作中應(yīng)非常重視如何更好的教授與學(xué)習(xí)C語言課程,本文就C程序設(shè)計(jì)這門課程的教學(xué)方法就行探究,主要從一下幾個(gè)方面:
一、C語言教學(xué)中存在的問題
(一)課程本身抽象且復(fù)雜
由于學(xué)生剛開始對(duì)C語言實(shí)驗(yàn)環(huán)境不熟悉,沒有弄明白計(jì)算機(jī)程序結(jié)構(gòu)原理,直接學(xué)習(xí)繁瑣的運(yùn)算符和數(shù)據(jù)類型、三大控制結(jié)構(gòu)等知識(shí),但這些概念本身抽象難懂,會(huì)造成學(xué)習(xí)后面章節(jié)的數(shù)組、函數(shù)和指針內(nèi)容時(shí)比較困惑。導(dǎo)致學(xué)生跟不上學(xué)習(xí)進(jìn)度,認(rèn)為C語言難學(xué)、不易理解。
(二)教學(xué)方法不合理
到目前為止,C語言程序設(shè)計(jì)還是以PPT為主的課堂教授,上機(jī)也只是簡(jiǎn)單例子的練習(xí),學(xué)習(xí)的重心依然停留在理論知識(shí)上,同時(shí)陷入了語法知識(shí)的學(xué)習(xí)中,而完全沒有程序設(shè)計(jì)的思想。這種理論脫離實(shí)際的教學(xué)方法,最終結(jié)果是即使學(xué)生考核分?jǐn)?shù)很高,也不可能運(yùn)用C語言編程去解決現(xiàn)實(shí)問題。
(三)缺乏師生溝通
高校教學(xué)中除了上課時(shí)間外,師生之間接觸較少,再加上課程本身抽象復(fù)雜有一定的難度,學(xué)生很容易對(duì)課程及老師都感到厭倦,老師和學(xué)生之間缺乏溝通,老師認(rèn)為學(xué)生不認(rèn)真聽課才學(xué)不好,卻不清楚學(xué)生對(duì)C語言課程的適應(yīng)情況和具體需求,單方面的灌輸知識(shí)完成教學(xué)任務(wù)。將大大影響教學(xué)的效果和質(zhì)量,更也達(dá)不到教學(xué)要求。
二、從項(xiàng)目入手的教學(xué)過程
基于項(xiàng)目的教學(xué)方法是指精心設(shè)計(jì)一個(gè)C語言項(xiàng)目作為教學(xué)引導(dǎo),讓學(xué)生明確課程的學(xué)習(xí)目標(biāo)及實(shí)際應(yīng)用情況。從項(xiàng)目入手的教學(xué)法整體實(shí)施過程如圖1所示。
項(xiàng)目引入
與教學(xué)結(jié)合的實(shí)施過程
獨(dú)立完成任務(wù)
圖1
(一)項(xiàng)目引入
從項(xiàng)目入手的C語言教學(xué)方法,其實(shí)就是在老師引導(dǎo)下學(xué)生自主學(xué)習(xí)知識(shí)的過程,老師需要詳細(xì)地講解計(jì)算機(jī)程序結(jié)構(gòu)原理,介紹項(xiàng)目設(shè)計(jì)內(nèi)容,具體每個(gè)模塊的實(shí)現(xiàn)目標(biāo),以及項(xiàng)目所使用的編程環(huán)境。讓學(xué)生對(duì)接下來的學(xué)習(xí)和實(shí)踐有清晰的概念和認(rèn)識(shí),從整體勾勒出項(xiàng)目的最終目標(biāo)。
(二)與教學(xué)結(jié)合的實(shí)施過程
事先要對(duì)教學(xué)內(nèi)容與項(xiàng)目功能進(jìn)行詳細(xì)的分類整合,確保C程序設(shè)計(jì)課程所有知識(shí)點(diǎn)都由淺入深地全部涵蓋在項(xiàng)目里面,選取難易程度適中,確保學(xué)生有信心完成項(xiàng)目。
課程基礎(chǔ)階段學(xué)生可以跟著老師同時(shí)進(jìn)行,如C語言中變量、數(shù)據(jù)類型、運(yùn)算符和表達(dá)式以及三種基本程序設(shè)計(jì)結(jié)構(gòu)等,以教授方式為主,也可以選擇對(duì)經(jīng)典案例進(jìn)行講解分析而全面牢固掌握知識(shí)點(diǎn),主要是實(shí)現(xiàn)簡(jiǎn)單功能。接著是較難的數(shù)組學(xué)習(xí),通過數(shù)組實(shí)現(xiàn)大部分功能,體現(xiàn)項(xiàng)目中對(duì)數(shù)據(jù)的操作。然后是提出項(xiàng)目的缺點(diǎn),在不斷完善中學(xué)習(xí)函數(shù)、指針、結(jié)構(gòu)體等內(nèi)容,這部分教學(xué)過程中學(xué)生將進(jìn)行分組來完成類似功能模塊。在教學(xué)過程中以學(xué)生為主體,并在每節(jié)課或?qū)崿F(xiàn)某個(gè)功能后,總結(jié)新知識(shí)點(diǎn),達(dá)到鞏固加深的作用。
(三)獨(dú)立完成任務(wù)
在項(xiàng)目結(jié)束課程內(nèi)容也學(xué)完之后,老師應(yīng)當(dāng)總結(jié)歸納整個(gè)項(xiàng)目實(shí)施過程,分析解決問題的思路,讓學(xué)生對(duì)項(xiàng)目更加清晰明了,培養(yǎng)軟件工程的思想。為進(jìn)一步提高學(xué)生實(shí)踐能力,老師提供多個(gè)項(xiàng)目,以分組方式選擇不同項(xiàng)目進(jìn)行最后測(cè)試,要求每個(gè)學(xué)生對(duì)項(xiàng)目整體清楚,并應(yīng)用所學(xué)知識(shí)能獨(dú)立完成某一部分功能。
三、從項(xiàng)目入手的優(yōu)點(diǎn)
(一)學(xué)習(xí)目標(biāo)明確
采用基于項(xiàng)目的教學(xué)方法能使學(xué)生更快的理解計(jì)算機(jī)程序結(jié)構(gòu)容易入門,也有明確的學(xué)習(xí)目標(biāo),更好地引出教學(xué)內(nèi)容,同時(shí)讓學(xué)生積極主動(dòng)地參與到課堂中,提高教學(xué)效果。
(二)更易理解
將實(shí)際項(xiàng)目與C語言課程相結(jié)合的教學(xué)過程,使學(xué)生在一步步的項(xiàng)目實(shí)現(xiàn)過程中逐漸掌握C語言課程的全部知識(shí)點(diǎn),而且整個(gè)教學(xué)過程學(xué)生都是被項(xiàng)目所主導(dǎo),能夠最大限度地發(fā)揮學(xué)生的主體作用,主動(dòng)地探索知識(shí),循序漸進(jìn)地提高編程的能力。
(三)感覺有趣且富有成就感
項(xiàng)目引入和經(jīng)典實(shí)例的教授方式,讓學(xué)生主動(dòng)積極地參與進(jìn)來,鼓勵(lì)學(xué)生發(fā)散思維開拓思路,充分吸引學(xué)生的注意力,讓學(xué)生體會(huì)編程帶來的樂趣;更重要的是能夠運(yùn)用知識(shí)解決實(shí)際問題,使學(xué)生感受到知識(shí)的力量,充滿了成就感。
四、總結(jié)
本文教學(xué)方式至始至終都是在項(xiàng)目的牽引下指導(dǎo),學(xué)生完成項(xiàng)目并掌握C語言程序設(shè)計(jì)課程的所有內(nèi)容。一方面可以在在教學(xué)過程中鍛煉學(xué)生的編程能力,培養(yǎng)學(xué)生的邏輯能力,再通過精心設(shè)計(jì)的有趣的案例激發(fā)并加深學(xué)生的學(xué)習(xí)興趣。另一方面,教學(xué)過程中可以培養(yǎng)學(xué)生的溝通能力并拓寬學(xué)生的知識(shí)面,進(jìn)一步提高學(xué)生的求知欲,這對(duì)學(xué)生以后的發(fā)展很重要。因此,將以項(xiàng)目入手的教學(xué)方式運(yùn)用到C語言程序教育中,可以使枯燥的學(xué)習(xí)更加有趣靈活。
參考文獻(xiàn)
[1]王燕,周愷,潘雷.《C語言程序設(shè)計(jì)》課程教學(xué)改革探討[J].電腦知識(shí)與技術(shù),2018(25):150-153.
[2]王俐.基于項(xiàng)目訓(xùn)練的C語言教學(xué)探討[J]. 電腦與電信,2018(24):24-26.
[3]韋立梅,林琳.《C語言程序設(shè)計(jì)》課程項(xiàng)目化教學(xué)改革的研究[J].學(xué)術(shù)探討,2018(61):65-67.