培訓(xùn):樂高機(jī)器人、圖形化編程、Python程序開發(fā)、C++程序開發(fā)
拆 — 拆分問題的能力
要做一個“貪吃蛇”游戲,這是一個很大的問題,該怎樣入手呢?如剛才所講,得想辦法讓電腦把這件事情搞明白,有哪些步驟,每一步該干什么,哪步在先哪步在后。所以我們首先需要把這個大問題進(jìn)行拆解。
拆解
在這個程序中,計(jì)算機(jī)主要處理兩件大事:
1. 處理輸入 – 收集用戶操作信息
2. 輸出響應(yīng) – 根據(jù)不同的輸入,做出不同的響應(yīng)
再拆解
1. 輸入 - 用戶的操作可以有按上、下、左、右鍵四種
2. 輸出 - 相應(yīng)地,貪吃蛇也要做往上、下、左、右走的動作
我們將第二點(diǎn)再拆解
貪吃蛇每走一步,可能有這幾種情況:
1. 吃到蘋果
2. 撞到墻
3. 撞到自己
4. 什么都沒發(fā)生
我們不難發(fā)現(xiàn)具備這種有拆解能力的人做事情是耐心的、有條不紊的。
整 — 發(fā)現(xiàn)并且整合“重復(fù)規(guī)律”的能力
“找規(guī)律”就是觀察和找到那些重復(fù)發(fā)生的規(guī)律。
比如“貪吃蛇吃蘋果”所發(fā)生的一系列動作,是程序中多次會發(fā)生的,無論蘋果在左上方還是右上方,無論蛇是從上面吃還是從下面吃,都是同樣的一組動作,那么我們就可以把這組動作打包,給它取一個名字叫“吃蘋果”。
每次蛇遇到蘋果時,就可以直接把“吃蘋果”拿出來用,而不用重新把它所包含的一系列動作再想一遍,搞不好的話還會有紕漏。
在編程的過程中,孩子得一直在做這樣的訓(xùn)練,發(fā)現(xiàn)一些可以重復(fù)的單元,把它整合起來,讓計(jì)算機(jī)去重復(fù)它。
觀察那些做事效率高的人,他們就具備了這個能力。很多孩子解題快,就是他善于發(fā)現(xiàn)和總結(jié)“重復(fù)規(guī)律”,腦袋里自備了一個裝有很多類似于“吃蘋果”那樣的方法庫,遇到時直接調(diào)用,不用再從頭到尾想一遍,也不會錯漏。
析 — 邏輯思維能力
邏輯思維中有個非常重要的原則叫做MECE(Mutually Exclusive and Collectively Exhaustive),意思就是“相互排斥且整體完備”,也就是“不重復(fù),不遺漏”。
在編程過程中,處處要考慮和遵循MECE原則。
比如在貪吃蛇的程序里,蛇每往前走一步,可能會出現(xiàn)4種情況:
a. 吃到了蘋果
b. 撞到墻
c. 撞到自己
d. 什么都沒發(fā)生
這4種情況是互斥的,比方說吃到蘋果的時候就不可能撞到墻,那么程序中就不能讓蘋果出現(xiàn)在墻上;而且,這4種情況覆蓋了所有可能性,在寫程序時如果只考慮了其中的2種或3種,就不“完備”了。這些思考對孩子的來說都是非常好的邏輯訓(xùn)練。
改 — 調(diào)試糾錯能力
這點(diǎn)是最重要,也是孩子最需要的能力。
任何事情都很難一次就完成得盡善盡美,程序運(yùn)行起來發(fā)現(xiàn)不對有問題,這時就需要孩子去尋找出錯的地方,并將它一點(diǎn)一點(diǎn)去改正。
實(shí)際上程序中很多bug都不是一下就能找到的,常常需要從頭到尾把程序的運(yùn)行順序一步一步地跟走一遍,觀察每一步的運(yùn)行結(jié)果(專業(yè)術(shù)語叫“單步調(diào)試”)。這需要很多的耐心、觀察力和專注力,對孩子的抗挫折能力也是一種磨練。
當(dāng)調(diào)試經(jīng)驗(yàn)豐富之后,孩子在寫程序時還會懂得給那些“有可能會出錯”的地方先做個記號,方便回頭來檢查糾錯。他更關(guān)注于提高自己糾錯的技能,而不是害怕、回避或者掩蓋錯誤。孩子會越來越懂得,有錯很正常,只要能把它揪出來,改正就好。
有些人總是在進(jìn)步,因?yàn)樗S時懂得回溯、調(diào)試、糾錯,進(jìn)而提升自己。
以上就是深圳小碼王少兒編程培訓(xùn)中心為您提供少兒編程如何培養(yǎng)孩子各項(xiàng)能力?的全部內(nèi)容,更多內(nèi)容請進(jìn)入咨詢問答 查看