計(jì)算機(jī)語言是制作軟件的重要工具,計(jì)算機(jī)語言類課程是計(jì)算機(jī)專業(yè)的重要專業(yè)課。
在計(jì)算機(jī)語言教學(xué)中,教師應(yīng)認(rèn)識(shí)到學(xué)習(xí)計(jì)算機(jī)程序設(shè)計(jì)語言的重點(diǎn)是思想的學(xué)習(xí)和鍛煉,而不是語法。然而,我們現(xiàn)在的教學(xué),仍然以語法為主要內(nèi)容,以致在教學(xué)過程中,教師對(duì)于語法的講解非常細(xì)致,但在設(shè)計(jì)思想和軟件工程思想方面涉及卻不夠,造成學(xué)生實(shí)際編寫程序的能力不強(qiáng),并缺乏自主學(xué)習(xí)和實(shí)際操作的能力。針對(duì)傳統(tǒng)教法存在的諸多弊端,應(yīng)及時(shí)進(jìn)行調(diào)整。對(duì)此,筆者經(jīng)過多年的教學(xué)實(shí)踐,歸納出以下幾種方法。
一、課程引入,從整體到具體
中職學(xué)生剛接觸計(jì)算機(jī)語言時(shí),對(duì)一切都很好奇、陌生。鑒于此,筆者教學(xué)時(shí),不是一開始就給這些毫無專業(yè)基礎(chǔ)的學(xué)生灌輸枯燥難懂的基礎(chǔ)知識(shí),而是首先讓學(xué)生接觸幾個(gè)有代表性的程序,從程序的構(gòu)成、基本特點(diǎn)上予以講解,使學(xué)生對(duì)所學(xué)的這門課程有一個(gè)總體的認(rèn)識(shí),然后再講解各個(gè)章節(jié)的知識(shí)點(diǎn)。我們知道計(jì)算機(jī)語言課程最大的特點(diǎn)就是語法規(guī)則太多,知識(shí)點(diǎn)瑣碎且枯燥,往往還沒有深入到編程中,學(xué)生的學(xué)習(xí)熱情就已消磨殆盡。針對(duì)這種情況,我們可在教學(xué)中采用從整體把握到具體講解的教學(xué)方法:先引入一個(gè)實(shí)例,讓學(xué)生從總體上對(duì)要講的內(nèi)容有一個(gè)感性的認(rèn)識(shí),激發(fā)學(xué)生的求知欲;然后再詳細(xì)講解各個(gè)知識(shí)點(diǎn)及相關(guān)語法規(guī)則。教師要把握好實(shí)例的選擇,盡量不要涉及復(fù)雜的算法,并能包括主要知識(shí)點(diǎn)。
二、案例教學(xué),任務(wù)驅(qū)動(dòng)學(xué)習(xí)
筆者在教學(xué)上采取“以案例為驅(qū)動(dòng)”的方法組織教學(xué),讓程序設(shè)計(jì)始終貫穿于整個(gè)教學(xué)過程之中,每個(gè)知識(shí)點(diǎn)都采用“分析問題—設(shè)計(jì)算法—編寫程序”的順序來進(jìn)行講解。先分析問題,找出其中的規(guī)律,繼而設(shè)計(jì)出算法,最后根據(jù)算法寫程序,這個(gè)過程體現(xiàn)了教師的主導(dǎo)地位。具體編寫代碼時(shí),筆者認(rèn)為直接將程序整體講解出來并不是上策,教師應(yīng)該和學(xué)生一起探討,每一步該做什么、怎么做、代碼怎么寫。程序完成后,再與教師事先準(zhǔn)備的程序比較講解。在這一教學(xué)過程中,教師應(yīng)把教學(xué)重點(diǎn)放在設(shè)計(jì)算法和講述算法特點(diǎn)上。涉及復(fù)雜的語法規(guī)則時(shí),教師應(yīng)盡量以學(xué)生熟悉的程序?yàn)槔齺碇v解。講解時(shí),可根據(jù)不同的要點(diǎn)來變換程序?qū)崿F(xiàn)的方式。比如,講數(shù)組名作函數(shù)參數(shù)時(shí),就可以用同一個(gè)題目的不同形式來作為實(shí)例。這樣學(xué)生才不會(huì)望而生畏,課堂教學(xué)才能取得良好的效果。案例教學(xué)法從問題入手,注重教學(xué)過程中師生之間的互動(dòng),有利于激起學(xué)生的求知欲,調(diào)動(dòng)學(xué)生的學(xué)習(xí)自覺性和主動(dòng)性,從而提高學(xué)生分析問題和解決問題的
能力。
三、課后思考,鼓勵(lì)一題多解
課程結(jié)束后要為學(xué)生布置一個(gè)或多個(gè)題目,并且鼓勵(lì)學(xué)生一題多解。在計(jì)算機(jī)語言的教學(xué)中,任何一個(gè)程序的代碼都不是唯一的,特別是涉及到一些算法或模塊化的程序,都可通過多種途徑來實(shí)現(xiàn)。例如數(shù)組定義,教材中要求學(xué)生掌握一維數(shù)組和二維數(shù)組,教師可以詳細(xì)講解一維數(shù)組的定義和使用,再啟發(fā)學(xué)生自己將定義引申到二維數(shù)組,并要求學(xué)生在程序中定義和使用二維數(shù)組。這種教學(xué)方法可以活躍學(xué)生的思維,激發(fā)學(xué)生的求知欲。
四、教為主導(dǎo),學(xué)為主體
目前,教師在授課過程中,雖然會(huì)努力去避免教師為主體的授課方式,但由于諸多因素的制約,在實(shí)際課堂中還是會(huì)不自覺地占據(jù)主體地位,填鴨式的教學(xué)過程導(dǎo)致課堂效率非常低下。因此,教師要樹立教為主導(dǎo)、學(xué)為主體的指導(dǎo)思想,把教學(xué)的著眼點(diǎn)放在良好教學(xué)環(huán)境的創(chuàng)設(shè)和學(xué)生創(chuàng)新精神、創(chuàng)新思維能力的培養(yǎng)上。
例如,教師在講課時(shí)可以采用授課與自學(xué)相結(jié)合的方式,對(duì)于主要知識(shí)點(diǎn),教師以講解的方式來傳授知識(shí);而對(duì)于一些細(xì)節(jié),則可以留出一定的時(shí)間讓學(xué)生自學(xué)完成。為了提高自學(xué)效率,教師可以事先準(zhǔn)備一些問題,讓學(xué)生本著解決問題的態(tài)度去自學(xué),過后再和學(xué)生一起討論。通過這樣的方式來完成課堂教學(xué),能極大地提高學(xué)生的學(xué)習(xí)積極性,變被動(dòng)學(xué)習(xí)為主動(dòng)學(xué)習(xí)。又比如,教師在講解程序特別是一些典型算法時(shí),應(yīng)考慮學(xué)生的思維特點(diǎn),先分析問題,找出其中的規(guī)律,繼而設(shè)計(jì)出算法,最后根據(jù)算法寫程序,這個(gè)過程應(yīng)體現(xiàn)教師的主導(dǎo)地位。這樣,教師可以充分發(fā)揮學(xué)生的主觀能動(dòng)性,同時(shí)能隨時(shí)了解學(xué)生對(duì)知識(shí)的掌握情況,并對(duì)教學(xué)方法進(jìn)行相應(yīng)調(diào)整。
幾年來,筆者在進(jìn)行計(jì)算機(jī)語言課的教學(xué)過程中,堅(jiān)持采用以上教學(xué)方法,取得了較好的教學(xué)效果。學(xué)生因此有很高的學(xué)習(xí)熱情,并且通過學(xué)習(xí)與實(shí)踐,學(xué)生分析問題、解決問題的能力也得到了提高。
(作者單位:甘肅省定西理工中等專業(yè)學(xué)校)