編程作為一種工具,是為了讓孩子找到一種適合自己的學(xué)習(xí)方式,終的目的是讓每一個(gè)孩子能夠更加主動(dòng)、的學(xué)習(xí)。所以任何脫離了這個(gè)目標(biāo)的編程教學(xué),或多或少都是有一些欠缺的。我覺(jué)得對(duì)待編程學(xué)習(xí),應(yīng)該有的態(tài)度是:
觀點(diǎn)1:編程教學(xué)終的目標(biāo)應(yīng)該聚焦在如何通過(guò)編程的方式去幫助學(xué)生表達(dá)創(chuàng)意,而不是聚焦在教會(huì)學(xué)生編程的基本技巧。當(dāng)然,掌握這些編程的技巧是孩子在學(xué)習(xí)過(guò)程中不可逾越的一個(gè)階段。
這個(gè)觀點(diǎn)似乎有點(diǎn)老生常談,但我認(rèn)為從心里面真正理解這條教學(xué)目標(biāo)非常重要,因?yàn)檫@條“綱”指引著課程的設(shè)計(jì)方向。為了達(dá)到這樣的教學(xué)目標(biāo),從教學(xué)設(shè)計(jì)的角度來(lái)看,我認(rèn)為應(yīng)該分成“學(xué)”和“啟”兩個(gè)階段。
“學(xué)”即編程基礎(chǔ)知識(shí)的學(xué)習(xí),這個(gè)階段終的目標(biāo)是幫助孩子掌握編程的基本技巧。以Scratch的學(xué)習(xí)為例,在一些小游戲的設(shè)計(jì)、加上音樂(lè)的創(chuàng)作,例如孩子們喜歡的小游戲Minecraft的結(jié)合等等,大多數(shù)孩子都很感興趣,都可以納入進(jìn)來(lái)。但是比較重要的一點(diǎn),是讓孩子覺(jué)得“編程有意義”,所以孩子課本上學(xué)到的、生活中見(jiàn)到的現(xiàn)象是比較合適的主題,而且學(xué)習(xí)這樣的主題也更容易引起共鳴。
比如,將小學(xué)數(shù)學(xué)課上學(xué)到的加減乘除運(yùn)算融合到下面的賽跑游戲中,一方面數(shù)學(xué)知識(shí)有了實(shí)際的應(yīng)用場(chǎng)景,另一方面游戲的設(shè)計(jì)也能激發(fā)孩子的創(chuàng)作熱情。
觀點(diǎn)2:課程體系的延伸源于孩子創(chuàng)意表達(dá)需求的延伸。
在編程教學(xué)過(guò)程中,經(jīng)常有家長(zhǎng)問(wèn)老師“孩子應(yīng)該從何學(xué)起”,得到的回答往往是:應(yīng)該從圖形化編程開始,然后過(guò)渡到代碼編程,后學(xué)習(xí)算法。
既然編程是孩子創(chuàng)意表達(dá)的一種工具,那么很顯然對(duì)于不同年齡又或者是不同興趣的孩子來(lái)說(shuō),他們對(duì)周圍世界的認(rèn)知是不一樣的,需要表達(dá)的創(chuàng)意也就不一樣。有的孩子對(duì)世界的理解可能是天馬行空的想象,想到的就是合理的;有的孩子可能對(duì)真實(shí)世界已有的現(xiàn)象充滿了好奇,比如樓道里的燈天黑了為什么會(huì)自動(dòng)亮;還有的孩子可能會(huì)想,我能不能讓這個(gè)世界更加便利。
從這個(gè)角度出發(fā),作為編程老師,選出合適的編程工具以滿足孩子上述需求似乎更加合理。而且為了符合孩子的認(rèn)知能力,這種編程工具應(yīng)該盡量簡(jiǎn)單、不需要特別高的門檻,孩子能夠通過(guò)簡(jiǎn)單的操作即可將自己的想法具象化。孩子選擇哪一種編程語(yǔ)言一方面要根據(jù)興趣,另一方面也要考慮認(rèn)知能力。不過(guò)需要指出的是,不是從一種編程工具過(guò)渡到另一種編程工具,孩子的能力就會(huì)提升。孩子們做不到達(dá)到自如的表達(dá)創(chuàng)意,深入學(xué)習(xí)都是對(duì)計(jì)算思維的極大鍛煉。
當(dāng)然,對(duì)于一些理解能力強(qiáng)、學(xué)習(xí)快、對(duì)計(jì)算機(jī)特別感興趣的孩子來(lái)說(shuō),在小學(xué)階段嘗試代碼編程、學(xué)習(xí)算法、朝著計(jì)算機(jī)專業(yè)發(fā)展也未嘗不可。