張寧
編程教學(xué)目前已經(jīng)成為新課程改革的一個(gè)新的重要內(nèi)容,無(wú)論是小學(xué)、初中、高中,都已由原來(lái)居于本學(xué)段較后期的學(xué)習(xí)走向了前段時(shí)期,甚至很多學(xué)校在低年級(jí)就快速進(jìn)入編程教學(xué)。這其中的原因,有國(guó)家政策提倡編程教學(xué)的大背景,隨著技術(shù)的發(fā)展軟件操作也越來(lái)越難以適應(yīng)信息技術(shù)教學(xué)現(xiàn)實(shí)需求,從而對(duì)課程內(nèi)容、價(jià)值定位傾向更有學(xué)科特征的編程內(nèi)容。不論信息技術(shù)教材還是課堂教學(xué),編程教學(xué)無(wú)疑將會(huì)成為一道新的信息技術(shù)課堂教學(xué)的靚麗風(fēng)景。在這道風(fēng)景之中,我們?nèi)绾稳バ蕾p,如何去實(shí)踐,如何去總結(jié),都會(huì)影響到這道風(fēng)景的現(xiàn)實(shí)魅力與未來(lái)發(fā)展。為此,我們很有必要基于編程教學(xué)的內(nèi)容與課堂的教學(xué)實(shí)踐,來(lái)清晰審視如何教、如何學(xué)才能達(dá)成編程教學(xué)的優(yōu)質(zhì)高效。
不同類型編程教學(xué)的優(yōu)質(zhì)高效價(jià)值差異比較
從編程教學(xué)的內(nèi)容類型來(lái)看,目前涉及的領(lǐng)域、類型很多,既有新興的圖形化編程、開(kāi)源硬件編程、手機(jī)APP編程、人工智能編程等,也仍然存在著傳統(tǒng)的算法與程序設(shè)計(jì)、信息學(xué)奧賽等編程教學(xué)。
從編程工具的種類上來(lái)分,中小學(xué)涉及的有Scratch、Scraino、VB、C++、Python、java以及開(kāi)源硬件自帶的編程語(yǔ)言等。不同的編程工具,其效率大不一樣,其價(jià)值也很不相同。
不同類型的編程教學(xué)內(nèi)容往往需要不同種類的編程工具,教學(xué)的目標(biāo)、方法、策略也不盡相同,從而影響著課堂教學(xué)的優(yōu)質(zhì)高效價(jià)值差異,值得我們?cè)诒容^中思考。例如,圖形化編程易于培養(yǎng)工程思維和操作技能,代碼編程易于培養(yǎng)算法思想和邏輯能力,而開(kāi)源設(shè)計(jì)編程則易于培養(yǎng)學(xué)生的產(chǎn)品開(kāi)發(fā)設(shè)計(jì)能力,雖然這些能力并不能割裂對(duì)待,但是在不同的編程教學(xué)工具上有不同的側(cè)重,從而決定了編程教學(xué)優(yōu)質(zhì)高效的價(jià)值取向,這是值得我們結(jié)合教學(xué)實(shí)踐來(lái)進(jìn)行篩選內(nèi)容、提升方法才能達(dá)成的,尤其是要化繁為簡(jiǎn)、突出重點(diǎn),提高相應(yīng)的能力,才能讓編程教學(xué)的課堂有針對(duì)性地達(dá)到優(yōu)質(zhì)高效。
圖形化編程在思維、創(chuàng)意、設(shè)計(jì)等目標(biāo)上的優(yōu)質(zhì)高效價(jià)值取向分析
單就圖形化編程來(lái)說(shuō),在不同的學(xué)段,對(duì)不同的學(xué)生,以及針對(duì)當(dāng)?shù)厍闆r進(jìn)行的不同的教學(xué)水平,在思維、創(chuàng)意、設(shè)計(jì)等目標(biāo)上也存在不同的定位,從而影響優(yōu)質(zhì)高效價(jià)值的取向不同。
在圖形化編程中,因?yàn)槠鹗加诘湍昙?jí),其學(xué)習(xí)初期必然更多的是模仿,能夠根據(jù)范例進(jìn)行完成作品、達(dá)成計(jì)算思維的早期培育,進(jìn)而稍加修改提高創(chuàng)新能力,因此重在思維方式的編程教學(xué),落實(shí)到位、效果明顯應(yīng)是優(yōu)質(zhì)高效的價(jià)值取向。比如,采取動(dòng)畫(huà)故事、場(chǎng)景設(shè)計(jì)等范例讓學(xué)生在模仿中進(jìn)行編程思維培養(yǎng)的評(píng)價(jià),可以包括范例的完成效率、有無(wú)主動(dòng)地改進(jìn)等來(lái)體現(xiàn)優(yōu)質(zhì)高效。
到了高年級(jí),比如初中、高中,如果再更多地基于模仿,僅限于圖形化編程工具本身的學(xué)習(xí),就很難再談得上是優(yōu)質(zhì)高效的課堂教學(xué)。不論是不是零起點(diǎn)的學(xué)生,在學(xué)習(xí)圖形化編程時(shí),再基于大量的編程知識(shí)的學(xué)習(xí)必然是低效的。高年級(jí)的編程應(yīng)不能再重復(fù)軟件教學(xué)時(shí)的小學(xué)、初中、高中教一樣的內(nèi)容、上一樣的課堂的做法。在初中教學(xué)中,如果把圖形化編程作為創(chuàng)意的工具,在實(shí)現(xiàn)一些現(xiàn)實(shí)事物的表達(dá)創(chuàng)意中,比如在虛擬機(jī)器人項(xiàng)目、學(xué)科問(wèn)題解決項(xiàng)目中,根據(jù)編程技術(shù)、算法設(shè)計(jì)進(jìn)行相對(duì)獨(dú)立的自主探索,如何完成編程項(xiàng)目、動(dòng)手動(dòng)腦能力的過(guò)程表現(xiàn)、創(chuàng)意表達(dá)的評(píng)價(jià)等都可以成為教學(xué)優(yōu)質(zhì)高效的評(píng)價(jià)點(diǎn)。在高中教學(xué)中,圖形化編程盡量不要再作為學(xué)習(xí)的內(nèi)容,僅僅是一種工具而已,因?yàn)楦咧袑W(xué)生甚至已經(jīng)對(duì)代碼編程非常了解了,再去系統(tǒng)學(xué)習(xí)、應(yīng)用圖形化編程必將帶來(lái)思維的倒退。高中在開(kāi)源設(shè)計(jì)等方面涉及到圖形化編程,這時(shí)就要讓學(xué)生根據(jù)自查手冊(cè)等編程資源,不要局限在編程知識(shí)、流程學(xué)習(xí),要著力于設(shè)計(jì)、創(chuàng)新、制造的學(xué)習(xí)上,因此作品設(shè)計(jì)的創(chuàng)新性、創(chuàng)造的過(guò)程問(wèn)題解決能力、作品的功能與性能評(píng)價(jià)等應(yīng)是優(yōu)質(zhì)高效的基準(zhǔn)。
代碼編程教學(xué)在生活算法等方面的優(yōu)質(zhì)高效價(jià)值取向探索
在計(jì)算機(jī)語(yǔ)言編程教學(xué)中,主要是在初中和高中實(shí)施代碼編程的教學(xué)。
由于代碼編程相比圖形化編程的難度要高,雖然在算法思想上與圖形化編程有一定的繼承性,但是在語(yǔ)法結(jié)構(gòu)、數(shù)據(jù)類型、算法編程等方面有相當(dāng)大的差異。認(rèn)為有了圖形化編程的基礎(chǔ)就很容易進(jìn)行代碼編程的觀點(diǎn)是有偏差的。作為相對(duì)傳統(tǒng)又更接近計(jì)算機(jī)設(shè)計(jì)底層的代碼編程,在課堂效益方面也一直存在一些問(wèn)題。
中小學(xué)信息技術(shù)課程已經(jīng)經(jīng)歷了幾十年的教育之路,從語(yǔ)言語(yǔ)法學(xué)習(xí)、算法設(shè)計(jì)學(xué)習(xí)等角度進(jìn)行過(guò)探索,目前由于開(kāi)源硬件的發(fā)展和新型編程語(yǔ)言Python的崛起,我們還是需要借鑒以前的經(jīng)驗(yàn)教訓(xùn),不盲目重復(fù)過(guò)去的錯(cuò)誤。過(guò)去,在中學(xué)進(jìn)行編程教學(xué)的最大缺陷是從語(yǔ)言語(yǔ)法出發(fā),從數(shù)據(jù)類型著手,再接上算法與流程圖,進(jìn)而是各種算法的教條學(xué)習(xí)。這樣,一是皮太厚學(xué)生啃不動(dòng),阻礙學(xué)習(xí)欲望;二是大量數(shù)學(xué)范例沒(méi)意思,阻礙技能形成;三是算法與現(xiàn)實(shí)生活脫離,為學(xué)而學(xué)、為考而學(xué),算法教學(xué)失去了活力。
在初中,我們就有必要更注重生活算法,讓算法與生活問(wèn)題相結(jié)合,用程序去解決生活中的問(wèn)題,比如用選擇結(jié)構(gòu)的算法設(shè)計(jì)智能問(wèn)題程序、用循環(huán)結(jié)構(gòu)的算法設(shè)計(jì)大數(shù)據(jù)的自動(dòng)化統(tǒng)計(jì)程序,體現(xiàn)出學(xué)習(xí)編程的價(jià)值,從而促進(jìn)課堂教學(xué)的優(yōu)質(zhì)高效達(dá)成。
在高中,我們就有必要從計(jì)算思維、問(wèn)題解決、產(chǎn)品設(shè)計(jì)等研究創(chuàng)新的角度去開(kāi)展編程教學(xué),比如通過(guò)編程設(shè)計(jì)自己的小軟件產(chǎn)品體驗(yàn)編程的價(jià)值,再如使用編程研究函數(shù)圖像的關(guān)系進(jìn)行學(xué)科研究性學(xué)習(xí)等。要達(dá)到常規(guī)軟件不太常見(jiàn)功能的編程體驗(yàn),而不能局限于編程技術(shù)本身的學(xué)習(xí)和常規(guī)程序的演練,具有思維含量并能夠創(chuàng)新的教學(xué)才能談得上是優(yōu)質(zhì)的教育。
總之,不同編程工具在課堂教學(xué)中達(dá)到優(yōu)質(zhì)高效需要的教學(xué)策略不同,不同年級(jí)對(duì)相同編程工具進(jìn)行編程教學(xué)達(dá)到優(yōu)質(zhì)高效價(jià)值取向定位也很不一樣,這本質(zhì)上涉及到編程教學(xué)理念定位、教學(xué)策略的不同,值得我們不斷研究。