精品伊人久久大香线蕉,开心久久婷婷综合中文字幕,杏田冲梨,人妻无码aⅴ不卡中文字幕

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
為什么硅谷精英鼓勵每個孩子學會編程,因為它教會我們?nèi)绾嗡伎?/div>



在這個國家里的每一位國民

都應(yīng)該學會編程

這能讓你懂得如何去思考

——史蒂夫·喬布斯



比爾·蓋茨,扎克伯格等硅谷精英鼓勵每個人都來學編程。很多美國公立學校在一年級就開設(shè)了Scratch編程課。



6周6節(jié)在線課完成孩子的編程啟蒙

Scratch麻省理工學院的兒童編程工具

每晚在線答疑,知識就該急不可耐

僅限300人,共同學習更有氛圍

適合小學2年級以上孩子


為什么每個孩子都應(yīng)從小學編程


文 | 王木頭

北大軟件工程碩士,少兒科普節(jié)目主播


這段時間,兒童編程非常流行,在很多地方都有創(chuàng)客教育、STEAM教育,都會涉及到教孩子編程。我想很多家長都聽說過了,甚至自己的孩子已經(jīng)上過相關(guān)的課程了。可是兒童編程到底是什么東西,對孩子的成長具體有什么好處,恐怕家長們都還不是很清楚。


兒童編程不需要寫代碼


我想肯定也有家長自己就是程序員,對編程技能和編程思維已經(jīng)很熟練了,當說到教孩子編程的時候,很多時候他們是皺眉頭,覺得這事不靠譜。因為他們想到了自己是如何一開始學習編程的,對當時經(jīng)歷過的困難還記憶猶新,認為學習編程超過了孩子的理解能力。


其實兒童編程和成人編程是不太一樣的,至于那里不太一樣,會不會因為降低難度而讓知識縮水,后面我會慢慢來講,然后大家可以有一個自己的判斷。

 

我們先來看看編程是什么。


但凡說到編程,尤其是對于不太熟悉編程的人來說,想到的肯定是滿屏幕看不懂的代碼,有各種很怪的英文單詞。這個想象出來的畫面是很多家長覺得孩子不適合學編程的最大阻礙,總覺得寫字都還不熟練,學編程豈不是更加吃力。而且整個屏幕都是這樣的代碼,一定很枯燥,自己孩子肯定堅持不下來。

 

其實這幅畫面并不準確,在兒童編程中根本不需要學習寫代碼。因為借助麻省理工學院(MIT) 設(shè)計開發(fā)的兒童編程工具Scratch,就可以降低門檻,解決很多兒童編程的問題。


Scratch的操作界面非常簡單


大家可以仔細看一下這個圖,即使沒有學過編程你也可以一下子看懂。


關(guān)鍵是學編程思維


終于不用敲代碼了,而是通過像積木一樣的拖拽來實習編程。這又會帶來另一個擔心——會不會簡化后就淪為玩具,學不到什么真正的東西?

 

這個我們一點點來聊。我們就先來看看成人學編程重點是學什么。我想肯定有不少人聽過,編程學什么語言不重要,只要真正的學會了一門語言比如說JAVA,再學其他的什么C語言啊,Python啊,就會快很多。所以,學習編程語言不是目的,編程語言是實現(xiàn)某個想法的技術(shù)手段,關(guān)鍵是要具備編程思維。

 

所以,如果兒童編程可以很好的幫助孩子們掌握了編程思維,以后等需要的時候就可以很快的的掌握正式的的編程語言,那么目的就達到了。到底能不能呢,我們先來一起看看什么是編程思維。

 

我把編程思維簡單地分成了兩個主要部分,一個是建模,一個是算法優(yōu)化


舉個例子,比如我們想要做一個程序,這個程序會自動把大象裝進冰箱里。那么建模是什么呢?就是我們要知道把大象裝進冰箱分幾步,經(jīng)過分析,知道了是分成三步,打開冰箱,把大象裝進冰箱,關(guān)上冰箱。


建模其實就是把一個復(fù)雜的問題拆分成更小的問題,保證小問題是可以用程序解決的。那么算法優(yōu)化呢,就是看看如何可以更有效地解決這些小問題。

 

這其實就有些像是寫文章,建模就是在構(gòu)思整個文章的大綱和思路,算法優(yōu)化呢,就是如何具體地潤色每一句的措辭。只要具備了這樣的思維,至于用什么語言寫,是漢語還是英語,是C語言是JAVA,其實問題都不大。


那么兒童編程可以培養(yǎng)編程思維嗎?不一定,這也是大家在報班學習的時候需要邁過的坑。有兩個方法會影響到編程思維的培養(yǎng),一個是編程工具,真實的編程語言和Scratch相比,我推薦Scratch,后面會解釋為什么。也會列舉一些其他兒童編程的產(chǎn)品,幫大家分析那些可以幫助訓練和提高編程思維。


另一個影響因素是,教學方式,就拿Scratch來舉例,很多學習班教的是如何使用Scratch這個軟件,而不是培養(yǎng)編程思維。就像是教人下圍棋,只是教了圍棋的規(guī)則,并沒有教圍棋相關(guān)的技巧和思考。

 

講到這里,可能有些家長就首先有個疑問。覺得自己的孩子未來又不需要當程序員,為什么還需要專門培養(yǎng)他們的編程思維呢?


編程思維是一種元認知能力


現(xiàn)在程序員成為了一種非常重要的工作,薪水高,職位多,好找工作。雖然這是個事實,單并不是為什么學編程的主要原因。

 

我想從更普遍的角度來說明下編程思維并不只是對編程有好處。

 

大家應(yīng)該還記得我剛才講過的編程思維最重要的兩個能力——建模和算法優(yōu)化,這兩種思維對于個人的重要程度是不相同的,尤其是對于不想成為專業(yè)程序員的人來說。

 

還是從剛才寫文章的例子來比喻。我可以說一說我自己,碩士從北大畢業(yè)了,肯定不是文盲了,都完成了好幾萬字的畢業(yè)論文,但是等到了工作中發(fā)現(xiàn)自己根本不會寫郵件,更不要說寫一份清晰的文檔。即使硬著頭皮寫了一份郵件,也肯定是思路混亂,讓人看了不知所云,找不到重點。


我可以肯定我郵件中的每一句話都是通順的,甚至沒有標點符號的錯誤。但是當所有的句子聚在合在一起的時候,還是不能清晰地表達出我腦子中的意思,甚至我腦子本身就是混沌的。

 

后來我實在是對自己這方面不滿意,在一位前輩的推薦下看了一本書,麥肯錫的《金字塔原理》,然后就豁然開朗了。

 

這本書主要是講,不論是商務(wù)寫作還是闡述自己的觀點,都最好遵守一個金字塔原理。也就是任何事情都可以歸納出一個中心論點,而此中心論點可由三至七個論據(jù)支持,這些一級論據(jù)本身也可以是個論點,被二級的三至七個論據(jù)支持,如此延伸,就像是個金字塔。

 

更關(guān)鍵的是對于論據(jù),有一個額外的要求,就是相互獨立,完全窮盡。

 

等我看到『相互獨立,完全窮盡』幾個字之后我一下子就開竅了。這不就是我們編程時對一件事建模的方法嗎?


編程的時候需要先采集需求,也就是用自然語言從各方面描述一個問題。比如“我想做一個小游戲,里面有只貓,我們可以控制它抓魚吃,魚會隨機從一邊游到另一邊,在這個過程中可能會被貓抓住,也可能會成功逃走。還要有定時的功能,在固定的時間內(nèi)看看誰可以抓住更多的魚。”

 

這樣的表達是我們平時的口語表達,語義模糊,人交流可以,編程就不行了。因為那是人和機器的溝通,任何模糊的和重疊的語句都是不被允許的。

 

于是為了實現(xiàn)這個小游戲,我就需要分析需求,拆分問題,看看這個游戲里面都有幾個角色,貓有什么行為,魚有什么行為,魚和貓是如何互動的等等。

 

也就是說,編程思維其實和麥肯錫的金字塔原理有些共通,都是拆分問題,用『相互獨立,完全窮盡』的方法保證語義的準確描述。這樣程序才能實現(xiàn)。

 

可如果沒有學過編程的話,即使明白了這些原理,也需要經(jīng)過大量的訓練才可以熟練掌握。


這也就是為什么說,編程思維中建模的能力和優(yōu)化算法的能力在某種程度上是不對等的。


優(yōu)化算法是一種專業(yè)技能,需要有大量的專業(yè)知識和數(shù)學知識。而建模是一種理性思維,建模能力是一種元認知能力——掌握這個方法,遇到未知問題都可以利用這種認知方式去應(yīng)對。


這才是學習編程的本質(zhì)。至于學習年齡,編程這種可以訓練元認知的課程,會比較適合小學二三年級以上的孩子


為什么推薦Scratch


講到這里就要說一下,為什么不是所有的編程都適合給孩子學,為什么會推薦Scratch。這是因為Scratch是越過了編程思維中的有關(guān)算法的訓練,直接訓練孩子建模能力

 

如果有家長了解過編程的話應(yīng)該知道,學習編程的時候一般都是先學數(shù)字的使用,例如比個大小,在數(shù)組里排序之類的。這其實都是算法問題。

 

可是在由麻省理工學院(MIT) 設(shè)計開發(fā)的兒童編程工具Scratch中就不會,設(shè)計它的目的就是為了讓孩子們可以擺脫這些繁瑣的技術(shù)細節(jié),直接將自己的想法進行建模并實現(xiàn),而這些復(fù)雜的技術(shù)細節(jié)只需要一條語句就可以做到。

 

盡管簡化的代價是無法像正式的編程語言一樣普遍適用,但卻非常適合孩子們用來設(shè)計游戲、MV、動畫和交互程序,這就已經(jīng)足夠了。

 

現(xiàn)在市面上有各種各樣的兒童編程工具,其中很多都是Scratch的衍生品,因為Scratch是開源的,很多機構(gòu)會做自己的定制。這些都是大同小異,可以選擇自己方便的來學習。

 

但是還有另外一些編程課可能就不會像Scratch這樣能很好地訓練建模思維了。其中最多的可能就是機器人課程,尤其是搭建有編程功能的機器人。

 

這些課程當然會對孩子的動手能力有訓練,不過在建模思維上的訓練并不會太多。更多訓練的是孩子的定量思維能力,以及遇到問題試錯改正的能力,可能更適合那些有理工氣質(zhì)的孩子們。


而Scratch,很多文學氣質(zhì)或是畫畫好的女孩子也會很感興趣,因為不需要太多的編程技術(shù),就可以做出自己的動畫繪本。

 

總之,在精力有限的情況下,推薦Scratch。如果是在這方面特真的別有天賦,或者是興趣極大,也推薦去嘗試其他課程。


給孩子的第一堂編程課

主講



主講人:王木頭


北京大學軟件工程碩士

博雅小學堂少兒科普節(jié)目

《王木頭講萬物簡史》主播


給孩子的第一堂編程課

課程介紹


第1課  領(lǐng)養(yǎng)一只程序貓做寵物


欣賞高手們做的程序,演示和介紹我們課程的終極目標——小游戲貓吃魚。并用拆解問題的方式把復(fù)雜問題拆分成簡單問題,打消掉太難學的顧慮。


帶小朋友探索Scratch中的運動相關(guān)的指令。

 

第2課  訓練貓可以唱歌和畫畫


進一步探索外觀和聲音指令,完成課程之后,可以程序中的角色制作音樂和小故事。


探索畫筆相關(guān)的指令,還有了解循環(huán)語句的嵌套使用。

 

第3課  把貓訓練的更聽話


探索偵測功能,人有眼耳鼻舌身5感,程序也可以從外界獲的感覺。明白選擇語句的用處。可以讓程序中的角色看起來智能一些。


探索事件的功能,可以讓程序中的角色不在循規(guī)蹈矩,面對突發(fā)事件程序可以隨機應(yīng)變。

 

第4課  讓貓在程序里交朋友


加入多個角色,重點理解多個角色之間如何進行互動和協(xié)作。


消息機制,如何讓多個角色直接互相可以交流。在消息機制下重新理解多個角色的互動和協(xié)作。

 

第5課  有記憶的貓更聰明


讓程序中的角色更充滿,不只是聽從命令,還可以有自己的記憶,講解Scratch中的變量問題。優(yōu)化打字小游戲,增加計時功能。


更強大的記憶功能——鏈表存儲,還有XY坐標定位方法。結(jié)合鏈表、坐標和畫筆的功能做一個寫字猜字的小游戲。

 

第6課  和貓一起做游戲


介紹克隆功能,簡單的復(fù)制很多的角色。


完成終極任務(wù),小游戲貓吃魚。



僅限300人

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服

主站蜘蛛池模板: 师宗县| 观塘区| 丹巴县| 玛曲县| 浦北县| 中方县| 凤城市| 文安县| 大足县| 通化市| 巴青县| 句容市| 宜兰市| 安福县| 白银市| 桂平市| 榆中县| 佛学| 濮阳市| 措美县| 西藏| 明溪县| 荣昌县| 昆明市| 乌鲁木齐县| 东兴市| 喀喇| 桐庐县| 连平县| 桑日县| 美姑县| 盐津县| 广河县| 新疆| 息烽县| 雷州市| 年辖:市辖区| 镇平县| 汕头市| 北流市| 太仆寺旗|