少兒編程語言的選擇首先第一點(diǎn)需要考慮到學(xué)習(xí)的對象不是成年人,而是小初高的學(xué)生群體,所以少兒編程行業(yè)通過對所有編程的語言進(jìn)行篩選之后,目前有四種比較適合孩子學(xué)習(xí),下面分別簡單介紹下:
【機(jī)器人編程】
機(jī)器人編程≠少兒編程!它是通過組裝、搭建、編寫程序運(yùn)行機(jī)器人,激發(fā)學(xué)生學(xué)習(xí)興趣、培養(yǎng)學(xué)生綜合能力的一種教育方式??梢岳斫鉃闄C(jī)器人編程教育是通過一些教育類的機(jī)器人來實現(xiàn)教學(xué)目的。機(jī)器人編程可以看做是少兒編程應(yīng)用的一個分支,它是在編程的基礎(chǔ)上將軟硬件結(jié)合應(yīng)用,更偏向硬件、偏向物理的一個方面,更多培養(yǎng)的是孩子的動手能力。系統(tǒng)的少兒編程學(xué)習(xí)更偏重探究編程語言的本質(zhì),一層一層把模塊打開,學(xué)習(xí)模塊內(nèi)部核心的邏輯、算法、語法和結(jié)構(gòu)。
機(jī)器人編程是應(yīng)用實體積木搭配軟件編程代碼綜合來實現(xiàn)一些課程的效果,實體積木比較好理解,軟件編程就是通過圖形化scratch,kitten,python,c,c++等語言編寫控制程序,從而用過軟件來控制硬件的效果。這類編程以樂高機(jī)器人這個名字為大眾所知。機(jī)器人編程能夠非常有效的鍛煉孩子的動手能力,所以大多數(shù)機(jī)構(gòu)都是把課程設(shè)置在低齡,一般的話4歲以上都可以學(xué)習(xí)這個,但是機(jī)器人編程終歸還是有些限制,因為機(jī)器人編程是軟硬件結(jié)合的形式,硬件學(xué)習(xí)的入門起點(diǎn)非常低,但是高級的機(jī)器人要求非常扎實的編程基礎(chǔ),比如C語言,C++等,但大多數(shù)的機(jī)器人機(jī)構(gòu)只停留在初級教育,最多涉及到一些圖形化編程教育,一般不會教授這些高級編程語言,最多就是實現(xiàn)效果的部分代碼給孩子學(xué)習(xí),一但脫離老師的指導(dǎo),孩子有可能什么也做不出來,這也是為什么8歲之后機(jī)器人編程很多機(jī)構(gòu)沒東西學(xué)的原因。所以初級階段的機(jī)器人編程筆者建議4-8歲學(xué)習(xí)。
【圖形化編程】
圖形化編程是少兒編程中常見的一個分支,通過編程游戲啟蒙、可視化圖形編程等,像組裝積木一樣,通過拖拽、點(diǎn)擊等簡單的操作,就可以制作屬于自己的動畫、游戲、音樂、繪畫等等,甚至用它來學(xué)習(xí)數(shù)理化知識。例如學(xué)生在制作一個小動畫的過程中,自己拆分任務(wù)、拖拽模塊、控制進(jìn)度,從而理解“并行”、“事件處理”、“目標(biāo)實現(xiàn)”等概念。圖形化的少兒編程,增加了編程的趣味性,也降低了學(xué)習(xí)的門檻和難度。
圖形化編程接觸的一般都是界面程序,就是有按鈕之類的界面,編程語言就是開發(fā)者控制或者是是與計算機(jī)交流的手段,開發(fā)者通過編寫編程語言告訴計算機(jī)該怎么運(yùn)行,在一些人機(jī)交互性很強(qiáng)的領(lǐng)域,如VR,尤其是圖形圖象,軟件部分采用了圖形化編程的手段,使得藝術(shù)家或?qū)I(yè)性不是很強(qiáng)的用戶也可以進(jìn)行一定邏輯層的開發(fā)。由于圖形化編程操作比較簡單,且不需要學(xué)生有很熟練的計算機(jī)基礎(chǔ),所以比較適合作為少兒編程的入門語言,筆者認(rèn)為圖形化編程比較適合6-12歲左右的學(xué)生學(xué)習(xí)。
【代碼編程之python】
Python奉行簡潔主義,易于讀寫,它使你能夠?qū)W⒂诮鉀Q問題而不是去搞明白語言本身。所以對于孩子來說,學(xué)習(xí)python很容易上手,不需要高深的知識也能寫,這樣就可以把時間放到理解知識點(diǎn)上面,而不是去背編程語法或者記憶單詞。而且兼容眾多平臺,所以開發(fā)者不會遇到使用其他語言時常會遇到的困擾,也就是說孩子不需要添加過多的代碼去適應(yīng)不同的平臺。這讓變成本身變得極富效率。除此之外,Python 是最接近 AI 的語言,近些年公布的人工智能的首選語言就是python。
pyhton作為少兒編程代碼模塊的首選語言,除了語法簡潔以外還因為它有著龐大的第三方庫,很多復(fù)雜的效果都可以使用非常少的代碼去實現(xiàn),舉個例子,你想要制作一個桌子,本身是個很復(fù)雜的過程,那python的第三方庫就是相當(dāng)于把木材,錘子,釘子這些一系列的材料給了你,你只需要拿著這些材料思考這么去制作這個桌子就行。所以python這個語言能夠去實現(xiàn)的效果是個非常多的,并且效果非常有趣,在數(shù)據(jù)分析,文件讀寫,數(shù)據(jù)可視化,圖像處理,界面設(shè)計,人機(jī)交互,游戲制作,文檔處理,網(wǎng)絡(luò)爬蟲,網(wǎng)頁制作,人工智能等方向均有應(yīng)用。因為python學(xué)習(xí)的內(nèi)容已經(jīng)有了一定的深度,特別是進(jìn)行到文件操作的時候需要孩子對計算機(jī)有個比較基礎(chǔ)的了解和操作,所以有一定的局限性。筆者建議孩子5年級及以上再接觸python語言,如果有一年以上的圖形化基礎(chǔ),可提前至4年級。
【代碼編程之C++】
如今的世界是科技和創(chuàng)新的競爭,沒有科技人才,未來無從談起。為了增強(qiáng)對基礎(chǔ)領(lǐng)域研究的人才培養(yǎng),國家2020年推出“強(qiáng)基計劃”,自計劃提出以來,c++這門語言尤其被恩寵,廣東作為教育改革的示范區(qū),也好像掌握了比其他地區(qū)更加精確的消息,所以學(xué)習(xí)c++的人數(shù)快速增長,畢竟信息差就是機(jī)會。那么這個強(qiáng)基計劃到底是講的什么呢?教育部對強(qiáng)基計劃的定位是“聚焦國家重大戰(zhàn)略需求,旨在建立健全我國基礎(chǔ)學(xué)科拔尖創(chuàng)新人才選拔培養(yǎng)有效機(jī)制”,“選拔有志于服務(wù)國家戰(zhàn)略需求,且綜合素質(zhì)優(yōu)秀或基礎(chǔ)學(xué)科拔尖的學(xué)生”。信息學(xué)成為強(qiáng)基計劃的一部分,繼數(shù)理化生之外,編程特長生正式出道,奧林匹克競賽銀牌,且高考分?jǐn)?shù)超過省一本線就有機(jī)會被清北等高校破格錄取,這也就意味著如果孩子能夠拿到競賽銀牌及以上,個別省份可能考個500多分就能上清北,在河南山東等地區(qū)想上清北怎么也得考個670分左右,這個計劃一出就給在編程有天賦的孩子指出了一條康莊大道,這也是為什么c++語言學(xué)習(xí)的孩子越來越多的原因。
C++是一門競賽語言,后面可以參加全國奧林匹克信息學(xué)競賽(NOIP),但是前面需要參加csp-j和cssp-s的競賽,并且拿獎,才能參加人數(shù)1萬人的NOIP競賽,所以c++的學(xué)習(xí)時長,大致是在三到四年左右,并且只有在高中才能參加NOIP,前期都是準(zhǔn)備階段。因為c++是一門競賽語言,所以難度上要比python大很多,并且課程相對枯燥一些,沒有什么炫酷的效果,所以建議孩子在學(xué)習(xí)c++之前最好有python代碼編程的基礎(chǔ),這樣才不至于剛開始就覺得很難,導(dǎo)致堅持下去。鑒于c++的特殊要求,筆者建議學(xué)習(xí)c++之前盡量有個半年到一年的python基礎(chǔ),六年級左右開始比較合適。