兒童編程會系統地教授孩子編程知識,機器人編程只是其中一個分支的領域。孩子打好編程基礎,可以學好機器人編程。但反過來,沒有扎實的編程基礎,卻難以控制好機器人。
機器人編程可以看做是兒童編程應用的一個分支,它是在編程的基礎上將軟硬件結合應用,更偏向硬件、偏向物理的一個方面,培養的是孩子的動手能力。
兒童編程教授的語言更深入、應用更廣泛,選擇也更多。機器人編程所學語言大部分比較簡單,多數局限于機器人本身使用。
——編程教授
隨著機器人技術的發展,機器人的開發者也不再局限于專業人士,再加上機器人操作有趣容易上手,很多小朋友也加入了學習機器人編程的行列。
循跡機器人
這就會給很多家長一個錯覺:以為小朋友已經學過機器人編程了,編程肯定很厲害了,沒必要再接受系統的兒童編程教育了?;蛘哒f學了機器人編程就等于學好了編程語言?
NO!編程教授可以很肯定的告訴各位,機器人編程≠兒童編程!下面是教授為大家總結的有關兩者區別的表格:
接下來教授為大家仔細對比下機器人編程和兒童編程。
機器人編程教育:通過組裝、搭建、編寫程序運行機器人,激發學生學習興趣、培養學生綜合能力的一種教育方式。
關鍵詞:運行機器人、編程
可以理解為機器人編程教育是通過一些教育類的機器人來實現教學目的。
兒童編程教育:根據不同年齡的兒童,分階段、系統性地教授兒童編程語言,從最開始的邏輯思維和抽象思維的培養,再到教會孩子學會運用“編程思維”,最后利用算法設計去解決實際問題的教育方式。
關鍵詞:編程、兒童、系統性教授、編程思維
1、機器人編程是以調用編程模塊指令讓機器動起來為目的。通常需要編程的模塊是已經寫好存儲在模塊里的,小朋友做的只是將模塊以不同的方式拼接起來。
2、兒童編程學習是探究編程語言的本質,一層一層把模塊打開,學習模塊內部核心的邏輯、算法、語法和結構。
3、深度方面:高級的機器人要求非常扎實的編程基礎,比如C語言,C++等,但大多數的機器人機構只停留在初級教育,最多涉及到一些圖形化編程教育,并不教授這些高級編程語言,這也是為什么3歲可以學習機器人,到8歲之后沒有東西可學的原因。
1、使用場景:機器人編程應用范圍僅限于機器人本身,一旦脫離了這個機器人,孩子所學的編程知識可能就無用武之地。簡單的機器人編程教育存在學習瓶頸,所學的編程知識是基于機器人硬件設計的課程內容。
編程學習是基于軟件項目開發設計的課程,其中會有一部分涉及到與硬件的交互,這里就和機器人有些類似,但是編程的高度是沒有限制的,孩子可以系統掌握各種語言,選擇范圍更廣。
2、職業選擇方面:兒童編程的學員可以從事大部分和編程有關的工作,機器人編程只是其中的一小部分。
相較于大部分機器人編程那些淺顯的編程語言訓練,接受兒童編程教育的孩子因為有扎實的編程基礎,未來在選擇這些專業時會有更大的優勢。
3、邏輯思維方面:機器人物理硬件的連接強調動手能力,一個6歲的孩子經過反復練習,可以很熟練的拼裝機器人,但是編程學習涉及更廣泛的邏輯思維,以及數學、英語、物理等K12學科。
相同點:
1、培養孩子的邏輯思維能力、抽象思維能力
2、培養觀察力和耐心
3、培養動手能力、協作能力和創造能力。
4、提高學生分析問題和解決問題的能力
不同點:
1、選擇方面:接受兒童編程教育的孩子能夠系統掌握編程語言,從Scratch到Python再到C++,選擇范圍很廣。
2、學業方面:兒童編程領域有NOI和NOIP,獲獎學生有機會保送一流大學,含金量也較高。機器人編程比賽則種類繁多,類目不一,每項的含金量很難統計,而且兩極分化嚴重,要么很高,要么很低。
3、費用方面:機器人編程以線下實體為主,學費通常為每期1-2萬元,而少兒編程教育只有它的50%,從幾千到一萬不等。另外兒童編程只需要一臺電腦即可,而機器人編程教育需要購買機器人,一個機器人少則千元,多的好幾千甚至上萬。對家長來說也是個不小的開支。
4、語言方面:機器人編程所用語言很多,不同的機器人需要不同的語言,比如樂高NXT有圖形化IDE,使用RoboLab語言,適合初學者;高級的可以使用RobotC,但這些語言崗位需求很少。
兒童編程所學的語言是面向整個計算機界的,以后做程序員、算法工程師、架構設計師都能用到。
樂高NXT
比如機器人編程很少用到的Python,兒童編程里這個是重點內容。這種語言優點很多,簡單易學、適用于數據分析,以算法為核心的人工智能更是常常用到Python。前段時間的最強AlphaGo Zero,Python對其強大的自學能力就有很好的支持能力。
Python應用
兒童編程除了教孩子編寫代碼,更多的是讓孩子學會運用“編程思維”解決問題。
機器人編程強調編程和機械硬件的結合,在動手能力方面要求更多一點。
注:計算機思維是計算機科學解決問題的一種強有力的思維方式。具有計算機思維的人,遇到問題會將問題分解為若干個小部分,去除問題細節,抽象定義問題,再通過收集數據,分析數據來理解和思考問題。
兒童編程
4 -6歲:編程小游戲
入門階段,可以先帶孩子玩一些編程小游戲,比如用指令控制一個角色到達終點,繞過一些障礙物,用循環來完成重復任務等等。
7 -9歲:圖形化編程工具
這個階段,可以讓孩子用一些可視化編程工具來完成一些復雜的任務。我強烈推薦的軟件Scratch,簡單好玩有趣,老少皆宜。
Scratch界面
10歲+:代碼編程語言
這時候孩子們可以開始學習一種編程語言,比如Python等,嘗試編寫一些軟件,初步學習算法、數據結構以及面向對象編程,也可以嘗試一些硬件編程。
機器人編程教育
4-8歲:
啟蒙興趣為主,可以讓孩子接觸一些積木類機器人。
Lego Mindstorms
Lego Mindstorms(樂高機器人)是可以編程的機器人拼裝套裝,集合了可編程主機、電動馬達、傳感器、Lego Technic部分(齒輪、輪軸、橫梁、插銷), 玩家通過編程命令盒子來控制機器人, 創建出能夠行走、說話、移動的機器人。
7-12歲:
孩子有了一定的動手能力,就可以學習單片機機器人。
12歲以上:
這時候孩子可以直接使用人型機器人進行學習,參加一些比賽。
兒童編程有國家級信息學奧賽NOI,和全國青少年信息學奧林匹克聯賽NOIP,獲獎的學生都有機會保送一流大學。
編玩邊學部分獲獎學員
NOI和NOIP考察孩子:
1、想象力與創造力;
2、對問題的理解和分析能力;
3、數學能力和邏輯思維能力;
4、對客觀問題和主觀思維的口頭和書面表達能力;
5、人文精神,包括與人的溝通和理解能力,團隊精神與合作能力,恒心和毅力,審美能力等。
機器人大賽有樂高贊助的國際機器人奧賽(WRO,World Robot Olympiad)和VEX機器人世界錦標賽。
機器人大賽考察孩子:
1、動手能力:孩子需要做硬件的連接和安裝;
2、物理知識:孩子需要思考如何使電機驅動、哪個引腳接地;
3、抽象思維:孩子在設計機器人時,思維需要在虛實空間中靈活轉換;
4、邏輯思維能力:給機器人設定程序時需要按照邏輯順序編寫代碼。
不難看出機器人編程大賽更偏重動手能力和物理知識的綜合運用,編程只是其中的一部分。而NOI和NOIP更多強調編程語言和“編程思維”的運用。
或者說,兒童機器人比賽考察的能力更寬泛而不深入,對算法的要求比NOI和NOIP低(成人類機器人大賽不在此行列)。
這個要看你的目的,從對孩子的思維能力和增加學業、就業競爭力而言,兒童編程教育更有優勢,范圍更廣。
但如果孩子喜歡動手操作和物理更多一點,那機器人編程也是不錯的選擇。