任馨+張群燕
摘 要: 針對目前程序設(shè)計(jì)基礎(chǔ)課程教師重語法、輕編程思維訓(xùn)練,學(xué)生動手能力差、編程能力弱的教學(xué)現(xiàn)狀,分析其主要原因是教學(xué)主導(dǎo)思想偏差、教學(xué)方法不合理、實(shí)踐教學(xué)太過偏重于驗(yàn)證而非解決實(shí)際問題的應(yīng)用,以及課程考評機(jī)制不太合理等因素。提出采用以能力培養(yǎng)為目標(biāo)的案例驅(qū)動模式的教學(xué)改革思路和方法,并將傳統(tǒng)教學(xué)與MOOC教學(xué)相結(jié)合,從而增強(qiáng)學(xué)生編程能力、提升課程的效能。
關(guān)鍵詞: 編程思維; 案例驅(qū)動; 能力培養(yǎng); MOOC; 課程效能
中圖分類號:G420 文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2017)08-73-04
Abstract: The course teaching of Fundamentals of Programming exists the problems that teachers focuses on grammar, rather than the training of programming thinking, and students has poor practical ability and weak programming ability. The main reasons are the deviation of teaching thought, the unreasonable teaching methods, the practice teaching excessive emphasis on verification, rather than the practical problem resolving, the unreasonable mechanism of curriculum evaluation and so on. Aiming at the problems, this paper puts forward the idea and method for teaching reform, which adopts the case-driven teaching mode with ability training as its target, and combines the traditional teaching with the MOOC teaching, so as to enhance the students' programming ability and the course efficiency.
Key words: programming thinking; case-driven; ability cultivation; MOOC; course efficiency
0 引言
“程序設(shè)計(jì)基礎(chǔ)”是教育部制定的高校非計(jì)算機(jī)專業(yè)大學(xué)計(jì)算機(jī)基礎(chǔ)教學(xué)系列中的核心課程,選用的語言有VB、C\C++或JAVA等,課程旨在讓學(xué)生理解程序設(shè)計(jì)思想,掌握程序設(shè)計(jì)方法,培養(yǎng)學(xué)生分析問題、解決問題的能力,并最終能運(yùn)用計(jì)算機(jī)知識進(jìn)行問題抽象、數(shù)學(xué)建模和計(jì)算機(jī)仿真計(jì)算等,為本專業(yè)服務(wù)。
1 存在的問題分析
目前,課程教學(xué)的普遍現(xiàn)象是學(xué)生的動手能力差、編程能力弱,大部分學(xué)生在課程學(xué)習(xí)后無法運(yùn)用所學(xué)計(jì)算機(jī)知識對專業(yè)問題進(jìn)行計(jì)算分析和計(jì)算機(jī)模擬求解,所學(xué)知識與實(shí)際應(yīng)用脫節(jié)。
部分觀點(diǎn)認(rèn)為,造成這種現(xiàn)狀的原因是所用編程語言古老,并非當(dāng)今軟件開發(fā)的主流,導(dǎo)致學(xué)生學(xué)習(xí)興趣不高,但教育部制定的“高等學(xué)校非計(jì)算機(jī)專業(yè)計(jì)算機(jī)基礎(chǔ)課程教學(xué)要求”中已明確了“C\C++\VB”為典型教學(xué)語言,且國內(nèi)外很多知名高校如清華大學(xué)、斯坦福大學(xué)等也選C語言作為程序設(shè)計(jì)課程的入門語言[1]。
我們認(rèn)為課程選用何種語言并不是導(dǎo)致問題的根源。問題的出現(xiàn)一般是由以下因素所導(dǎo)致。
⑴ 教學(xué)主導(dǎo)思想存在偏差、授課缺乏新意
教師在教學(xué)過程中太過重視語法的講授,而弱化程序設(shè)計(jì)思維的引導(dǎo),缺乏工程化能力的培養(yǎng),使得教學(xué)主導(dǎo)思想存在偏差。在授課過程中,教師習(xí)慣“一言堂”,缺乏師生互動。教學(xué)案例陳舊,缺乏趣味性,也無結(jié)合專業(yè)知識的應(yīng)用,學(xué)生對課程興趣不高,對新知識的探知欲不強(qiáng)。
教師講解案例的過程一般是“提出問題→寫/展示代碼”,而不是“提出問題→分析問題→流程圖分解→代碼實(shí)現(xiàn)”的啟發(fā)式教學(xué),學(xué)生對程序代碼理解困難,當(dāng)遇到新問題時(shí)無法變通。
⑵ 實(shí)踐偏重驗(yàn)證而非實(shí)際應(yīng)用
目前課程實(shí)驗(yàn)項(xiàng)目設(shè)置以驗(yàn)證性為主,幾乎沒有設(shè)計(jì)性或綜合類實(shí)驗(yàn),實(shí)驗(yàn)內(nèi)容缺乏創(chuàng)新性。教師對學(xué)生的實(shí)踐訓(xùn)練要求太過重視課堂講授知識的直接應(yīng)用,而不注重對學(xué)生工程化的思維訓(xùn)練。學(xué)生為完成實(shí)驗(yàn)內(nèi)容,機(jī)械地運(yùn)用老師課堂上講授知識或語句,拼湊出一個(gè)個(gè)蹩腳的程序。
⑶ 課程考核存在缺陷
課程的最終考核機(jī)制不夠完善。一是以實(shí)驗(yàn)和考試成績?yōu)橐罁?jù)的課程考核機(jī)制缺乏對學(xué)生學(xué)習(xí)過程的監(jiān)控和評價(jià);二是考題太過偏重語法而弱化編程能力,部分學(xué)生以應(yīng)試的學(xué)習(xí)態(tài)度對待課程,導(dǎo)致課程教學(xué)目標(biāo)與能力培養(yǎng)之間存在巨大偏差。
2 課程改革思路探討
如上所述,目前程序設(shè)計(jì)基礎(chǔ)課從教學(xué)內(nèi)容設(shè)置、教學(xué)方式、實(shí)踐環(huán)節(jié)和考核考評機(jī)制等方面均存在問題,我們針對這些問題做出調(diào)整,開展以“能力培養(yǎng)”為目標(biāo)的程序設(shè)計(jì)基礎(chǔ)課程教學(xué)改革[2]。
2.1 理論教學(xué)改進(jìn)措施
⑴ 開展以“案例驅(qū)動為導(dǎo)向、能力培養(yǎng)為目標(biāo)”的教學(xué)
轉(zhuǎn)變教學(xué)觀念,開展以案例驅(qū)動為導(dǎo)向的教學(xué),將章節(jié)知識融入教學(xué)案例中,讓學(xué)生在案例學(xué)習(xí)過程中潛移默化地掌握新知識。如圖1所示。由新知識導(dǎo)出引例,通過綜合案例深入理解課本知識,再由拓展案例實(shí)現(xiàn)知識延伸拓展[3]。其中綜合案例和拓展案例都是以能力培養(yǎng)為目標(biāo)而設(shè)計(jì)的。從案例分析、問題求解,到代碼實(shí)現(xiàn)的學(xué)習(xí)過程,讓學(xué)生逐漸理解程序設(shè)計(jì)思想、掌握程序設(shè)計(jì)方法。