2020-04-23 08:25:39來(lái)源:童程童美
坦率的說(shuō),少兒編程不是一個(gè)“寫(xiě)程序,做碼農(nóng)”的事情,少兒編程方向是一個(gè)基礎(chǔ)性的學(xué)科群體。少兒編程方向,未來(lái)可能會(huì)像數(shù)理化一樣,成為一個(gè)基礎(chǔ)性學(xué)科,甚至人文、藝術(shù)也可以基于它有延伸和融合。
做教育的人關(guān)心,家長(zhǎng)也關(guān)心,而當(dāng)我們接觸到大部分有這方面接觸的家長(zhǎng)來(lái)講,談及Minecraft、Scratch等等,都說(shuō)孩子們是超級(jí)喜歡。換言之,孩子們對(duì)電子游戲和計(jì)算機(jī)世界不是無(wú)感的,他們是最早投入和感興趣的一批人類群體。
無(wú)論我們是否回避,在孩子們基礎(chǔ)教育甚至高等教育的同步年齡段,以電子游戲和計(jì)算機(jī)世界為代表的生活方式都會(huì)大規(guī)模浸入孩子的真實(shí)生活。不管我們?nèi)绾螤?zhēng)議、甚至堅(jiān)決要求杜絕孩子接觸計(jì)算機(jī),但事實(shí)上,我們絲毫拒絕不了計(jì)算機(jī)世界對(duì)孩子成長(zhǎng)的影響。
所以,無(wú)論你持有什么立場(chǎng),不妨一起先來(lái)看一看。
少兒編程的基本背景
雖然大家可能對(duì)程序設(shè)計(jì)(也就是編程)、程序員(或者軟件開(kāi)發(fā)工程師)有一些聽(tīng)聞,但實(shí)際上真正了解少兒編程的并不多。
以Scratch為例進(jìn)行展示(后面通篇默認(rèn)都以Scratch為基礎(chǔ)工具)。Scratch是MIT研發(fā)并開(kāi)放的一個(gè)兒童圖形化編程的工具平臺(tái)??梢栽趙eb上進(jìn)行操作和分享,也可以下載到計(jì)算機(jī)本地。兒童甚至成人都可以使用它,來(lái)制作動(dòng)畫(huà)賀卡,制作游戲,制作音樂(lè),制作各種他們可以用編程完成的任務(wù)。非常的酷炫,所以也有人說(shuō),會(huì)編程的孩子未來(lái)就像搖滾巨星一樣,在孩子他們的群體中。
Scratch是一個(gè)圖形編程的工作方式,非常 適合兒童,但相應(yīng)的它的編程語(yǔ)言設(shè)計(jì),相比較專業(yè)計(jì)算機(jī)語(yǔ)言而言,就是一個(gè)簡(jiǎn)版——對(duì)于兒童起步而言,剛剛好。
孩子懂得這些指令的基本含義之后(他完全可以探索式的嘗試,弄懂大部分簡(jiǎn)單指令的含義),他就可以把中間的指令拖拽到右邊,享受他控制小貓咪的樂(lè)趣,創(chuàng)造一些活動(dòng)場(chǎng)景和游戲的樂(lè)趣——這些就是編程過(guò)程。
所以這個(gè)兒童編程的過(guò)程,不是像我們軟件開(kāi)發(fā)工程師那樣,對(duì)著符號(hào)化的計(jì)算機(jī)語(yǔ)言來(lái)工作。而是面向一個(gè)圖形化界面,面向一個(gè)具有豐富角色和操作性的、能夠讓他控制全部的新游戲。少兒編程就像一個(gè)創(chuàng)世紀(jì)的游戲一樣。
少兒編程對(duì)于教育的作用
三個(gè)層面來(lái)回答少兒編程對(duì)于兒童教育的巨大作用。
第一層:少兒編程有著豐富的基本技能內(nèi)涵,可以在各個(gè)方面幫助到兒童。
第二層:少兒編程是一個(gè)學(xué)科融合的最佳平臺(tái)(之一),可以提供跨學(xué)科的學(xué)習(xí)。
第三層:少兒編程可以完成很多高階能力的培養(yǎng),在未來(lái)公立教育中的地位也會(huì)不斷提高。
少兒編程培養(yǎng)的基本技能
少兒編程涉及到的基本技能非常豐富,不僅僅是編程本身。我們前面說(shuō),就以Scratch為例,至少有如下四個(gè)方面的基本技能方向:
1.數(shù)學(xué)方面
第一個(gè)方面就是數(shù)學(xué)。少兒編程圖形化編程,第一技能方向就是數(shù)學(xué)。我們前面注意到,兒童學(xué)少兒編程,首先注意的就是一個(gè)或一些角色在舞臺(tái)上的行動(dòng)——這其中就包括:
坐標(biāo)系:舞臺(tái)是一個(gè)以中心為原點(diǎn)的直角坐標(biāo)系,x軸正方向?yàn)橛?,y軸正方向?yàn)樯?。通過(guò)(x,y)坐標(biāo)點(diǎn),來(lái)控制所有角色的位置。
數(shù)據(jù)類型:最常見(jiàn)的是整數(shù)和小數(shù),即實(shí)數(shù)集(在Scratch中所有實(shí)數(shù)是一個(gè)數(shù)據(jù)類型),另外還有布爾類型(真或假)、字符串類型(一段文本)。
數(shù)據(jù)的比較:也就是數(shù)學(xué)中三種基本順序,大于、等于和小于。
算術(shù)運(yùn)算:加減乘除是四種基本運(yùn)算,兒童在編程過(guò)程中,常常需要在具體的場(chǎng)景中來(lái)運(yùn)用這四種基本運(yùn)算。另外還有取模運(yùn)算和四舍五入。
數(shù)學(xué)函數(shù):在編程過(guò)程中,兒童將接觸到一些基本的數(shù)學(xué)函數(shù),包括取絕對(duì)值,三角函數(shù),對(duì)數(shù)函數(shù)以及指數(shù)函數(shù)等。可以非常直觀的通過(guò)函數(shù)圖像的自動(dòng)喵點(diǎn)畫(huà)圖及生活應(yīng)用來(lái)理解它們。
幾何圖形:在編程過(guò)程中,一類常見(jiàn)的任務(wù)就是圖形繪制。這個(gè)過(guò)程中,兒童將大量接觸幾何圖形,并從坐標(biāo)系中進(jìn)行圖形繪制和操控。
所以這里面有著大量的數(shù)學(xué)學(xué)科內(nèi)容,而且,這些內(nèi)容都在具體的問(wèn)題和任務(wù)場(chǎng)景中出現(xiàn),既包括基本算術(shù)和幾何圖形知識(shí),也包括函數(shù)以及坐標(biāo)系等中學(xué)數(shù)學(xué)核心概念。通過(guò)它們?cè)诰唧w任務(wù)中的應(yīng)用,兒童不僅操控了這個(gè)虛擬世界,而且會(huì)切身鍛煉到、應(yīng)用到數(shù)學(xué)知識(shí)和能力。
2.邏輯方面
編程的基礎(chǔ),既有數(shù)學(xué),也有邏輯。邏輯思維能力,是兒童發(fā)展的一個(gè)基本能力,在文理各個(gè)方向都是十分重要的基礎(chǔ)。少兒編程,可能是第一次對(duì)兒童正式的、系統(tǒng)的進(jìn)行邏輯方面的鍛煉。
邏輯變量:起點(diǎn)就是邏輯變量或事件的真或假。真或假是邏輯世界的兩個(gè)基本值。
比較邏輯:對(duì)于用比較判斷的邏輯,是兒童有直接經(jīng)驗(yàn)并可以學(xué)習(xí)的基本邏輯判斷,大于、等于、小于三種邏輯判斷。
事件邏輯:其次是事件邏輯,基于事件的判斷,也是兒童比較熟悉的。少兒編程用幾種基本的事件模式,來(lái)生成事件判斷語(yǔ)句。在Scratch中都是以“觸碰”為核心動(dòng)作來(lái)構(gòu)建的。
邏輯運(yùn)算:在簡(jiǎn)單的邏輯推理中,三種基本邏輯運(yùn)算是最重要的基礎(chǔ)。即與邏輯、或邏輯和非邏輯——這三種基本邏輯在少兒編程中大量的使用到。
邏輯控制:然后就是一組邏輯控制,包括條件判斷、循環(huán)控制和等待。這些既是少兒編程的基本邏輯控制語(yǔ)句,也是邏輯思維鍛煉的一個(gè)基本工具。
所以在少兒編程中,邏輯思維的訓(xùn)練是一個(gè)基本訓(xùn)練,這也是程序設(shè)計(jì)及計(jì)算機(jī)科學(xué)方向的一個(gè)基本核心特征。兒童將在大量的問(wèn)題解決和任務(wù)控制中,形成系統(tǒng)化的有邏輯的解決方案。突出鍛煉到兒童的邏輯思維能力。這種邏輯訓(xùn)練的密集度,不是其它活動(dòng)所能比擬的。
3.設(shè)計(jì)思維
設(shè)計(jì)思維是人們提出的對(duì)未來(lái)社會(huì)有重大意義的思維方式,它是一種面向問(wèn)題解決的、創(chuàng)新的系統(tǒng)思維方法。這也是屬于STEM課程方向內(nèi)少兒編程的優(yōu)勢(shì)之一。我們的兒童將學(xué)會(huì)系統(tǒng)的思維方法來(lái)分析、分解問(wèn)題(需求),并通過(guò)綜合的資源來(lái)解決問(wèn)題。
基本設(shè)計(jì):在Scratch的編程世界中,任何一個(gè)問(wèn)題需求或任務(wù),都需要在背景、角色及行為上進(jìn)行思考和分解。它們是這款編程工具提供的基本視角和思維框架。
角色表達(dá):在角色的行為表達(dá)過(guò)程中,基本的表達(dá)工具是外觀圖形的控制和聲音音樂(lè)的控制(Scratch提供21種樂(lè)器的模擬)。一個(gè)角色的外在行為和表達(dá),無(wú)非這些方面。
交互邏輯:在事件過(guò)程中,背景、角色、行為所組成的一個(gè)完整世界中,核心邏輯是通過(guò)它們交互來(lái)完成的。除了程序所控制的軟件層面的交互之外,Scratch還提供豐富指令對(duì)計(jì)算機(jī)外部設(shè)備(如鼠標(biāo)、鍵盤(pán))以及外部的自動(dòng)化控制元件的操作能力,這使得少兒編程的解決問(wèn)題方式,擴(kuò)展到了硬件層面,擴(kuò)展到了生活中的自動(dòng)控制層面。
所以,少兒編程是一個(gè)具有豐富資源和場(chǎng)景可能性的學(xué)科方向,以驅(qū)使兒童深入的、創(chuàng)新的考慮問(wèn)題的解決方法,并鍛煉到兒童的設(shè)計(jì)思維。隨著問(wèn)題的復(fù)雜度,以及兒童問(wèn)題解決方案的復(fù)雜度,和方案中操控設(shè)備復(fù)雜度的提升,兒童的設(shè)計(jì)思維能力在不斷提升。
4.程序設(shè)計(jì)
最后再談一談少兒編程對(duì)程序設(shè)計(jì)能力的提升——這是顯而易見(jiàn)的,這是本門(mén)的功能。雖然我們前面說(shuō),就編程啟蒙工具Scratch這一類而言,它的語(yǔ)言設(shè)計(jì)是簡(jiǎn)版的,但對(duì)兒童而言卻是剛剛好。
程序設(shè)計(jì)的基本方面:程序設(shè)計(jì)和計(jì)算機(jī)語(yǔ)言的基本方面,包括數(shù)據(jù)與變量的概念,包括語(yǔ)句和模塊(函數(shù)),都是程序設(shè)計(jì)的基本概念。
計(jì)算機(jī)科學(xué)的方面:另外,Scratch中還有數(shù)據(jù)結(jié)構(gòu)的支持,這是計(jì)算機(jī)科學(xué)的基本核心內(nèi)容之一,還有對(duì)消息機(jī)制的應(yīng)用,這在計(jì)算機(jī)軟件系統(tǒng)中大量的應(yīng)用著。同樣的,需要使用到流程圖等設(shè)計(jì)工具。
系統(tǒng)運(yùn)行邏輯:目前我們的社會(huì),是一個(gè)人機(jī)協(xié)作的社會(huì)。相當(dāng)多的職業(yè)和職位,都需要和計(jì)算機(jī)系統(tǒng)打交道。理解計(jì)算機(jī)系統(tǒng)運(yùn)行的原理,最好最深入的方式就是理解一段程序。少兒編程每個(gè)任務(wù),都會(huì)涉及到系統(tǒng)啟動(dòng)、運(yùn)行和結(jié)束的基本過(guò)程。
工程技術(shù)研發(fā)邏輯:這既屬于元認(rèn)知層面的訓(xùn)練,同時(shí)也是STEM學(xué)科方向的基本特征之一。兒童在少兒編程過(guò)程中,將學(xué)會(huì)如何分析問(wèn)題(需求),學(xué)會(huì)設(shè)計(jì)、研發(fā)、測(cè)試,并在應(yīng)用中體會(huì)著解決問(wèn)題的快樂(lè)。深刻理解在工程意義上而言解決一個(gè)真實(shí)問(wèn)題的過(guò)程。
通過(guò)以上數(shù)學(xué)方面、邏輯方面、設(shè)計(jì)思維和程序設(shè)計(jì)四個(gè)方向基本技能介紹,我們可以得出結(jié)論,少兒編程,對(duì)比現(xiàn)在學(xué)校里的所有學(xué)科而言,都有鮮明的特色和優(yōu)勢(shì)。它對(duì)我們兒童的教育和鍛煉,恰恰是許多學(xué)科所不能提供的。
所以,少兒編程對(duì)于兒童的基本技能的學(xué)習(xí)和訓(xùn)練,有著巨大的、不可替代的作用。