您現在的位置是:首頁 > 動作武俠首頁動作武俠

為什麼說學習程式設計能培養孩子的邏輯思維?

  • 由 樂樂學程式設計 發表于 動作武俠
  • 2022-12-24
簡介程式設計過程中,孩子需要一直做這樣的訓練,發現程式中會一直持續的動作,然後將它打包起來,讓計算機自己重複,以提高編寫效率

貪吃蛇為什麼撞別人自己死

前次推文中簡要的說了一下程式設計學習的好處,之後有好幾位家長私信詢問詳情,想知道如何透過程式設計培養自家孩子的邏輯思維。

那今天樂哥就來說一說程式設計和邏輯思維的那些事兒。

為什麼樂哥會說孩子能從中獲得自己的“邏輯感”,因為程式設計有幾大關鍵性步驟!

拆:化繁為簡

化繁為簡,這四個字很容易理解,不過不容易做到。

很多時候我們看到一個難題的第一反應會是:

天啊,這麼大的事情我一個人怎麼完成哦。

我不知道

我不行

我做不到。

卻不知道將問題分成一個個能力之內、力所能及的小事情。這一點很多人都需要跟愚公學習。

愚公移山的故事大家肯定都知道,一個想依靠人力將王屋、太行兩座大山搬移開來的老頭,在很多人看來愚公是十分的痴心妄想。

就像隔壁家另一個老頭所說,這是非常愚蠢的做法。

甚矣,汝之不惠。以殘念餘力,曾不能毀山之一毛。——《愚公移山》智叟,語

但是換個角度來看,愚公其實是一個很懂得程式設計“化繁為簡”的思路。

他並不把王屋太行當做兩座難以逾越的大山,而是把他們看成一筐筐的土石,一點一點的搬移,總能清除掉的。

雖我之死,有子存焉;子又生孫,孫又生子;子又有子,子又有孫;子子孫孫無窮匱也,而山不加增,何苦而不平?

——《愚公移山》愚公,語

以遊戲編寫為例,對於新手來說哪怕是最簡單的遊戲貪吃蛇,想要編寫成功也是件不小的難題,可是如果將這個問題拆解開來,我們需要做的事情是,設定輸入方式和反應方式。

根據遊戲特性,貪吃蛇沒吃到食物時繼續遊動,吃到食物後會變大,撞到牆會死,撞到自己沒事。

然後我們在設計程式時將這四種分開,針對一種情況設定遊戲,比如“貪吃蛇吃到食物”:

貪吃蛇張開嘴巴→食物被吃掉→貪吃蛇閉上嘴巴→貪吃蛇身體長大一截。

為什麼說學習程式設計能培養孩子的邏輯思維?

另外幾種情況也依次分解,那麼這個複雜的問題看起來也就沒那麼麻煩了,不是麼?

同時,在這個過程中,孩子能親身到“條分縷析”“有條不紊”的真正含義。

整:發現整合

任何一個程式中都不是相互分割無關的資料組成,相反,一個程式中會存在很多“重複”內容。

比如,貪吃蛇中的“吃食物”動作,一個遊戲中貪吃蛇會吃到很多次食物,這也就是前面說到的“重複”。

程式設計過程中,孩子需要一直做這樣的訓練,發現程式中會一直持續的動作,然後將它打包起來,讓計算機自己重複,以提高編寫效率。

這一點,類似於數學中的“合併同類項”計算題。

3ab-4ab+8ab-7ab+ab=(3-4+8-7+1)ab

只不過相對於數學的單一,程式設計的趣味性更強。

學會利用這一點,孩子就能學會整合訊息的能力。

因為整合並不是簡單相加,而是對現狀的最佳化,也是推陳出新的方式之一。

為什麼說學習程式設計能培養孩子的邏輯思維?

析:邏輯解讀

其實程式設計也是 一種語言,只不過和人與人之間溝通不同的是,這種語言是人與計算機的溝通。

理性、嚴謹是計算機的特性,所以與它對話的語言也必須是理性的,嚴謹的,不能出半點偏差的

“較真”,是外界對程式設計師們的評價,也是每一個程式設計師所遵守的信念。

仍舊以貪吃蛇遊戲程式為例,如果某處思考出現漏洞,遊戲過程中就可能會出現“貪吃蛇撞了牆沒死”或者“貪吃蛇吃到食物沒有變大”等bug,那麼這就是一個失敗的遊戲程式。

因此,學習程式設計,就是在對孩子的邏輯思維和邏輯判斷能力進行訓練。

為什麼說學習程式設計能培養孩子的邏輯思維?

改:查缺補漏

人的一生不可能不犯錯。其實犯錯也沒什麼,改了就好。

而“改正”就是程式設計帶給孩子的邏輯能力中最重要的一項

上面樂哥提到,遊戲中會存在一些bug,這是最初設計時的思維漏洞,需要糾正。其實不止於此,但凡程式中出現與預期不一樣的執行結果,都需要進行調適、修正。

這個過程很麻煩,因為

有些bug不是一下子就能找到的,常常需要從頭梳理,十分考驗人的耐心和細心程度

不過也正因此,才更能磨練出孩子的品性,同時也能教會孩子反思反省意識。

為什麼說學習程式設計能培養孩子的邏輯思維?

其實,即便不學習,隨著年齡增長,孩子也會逐漸擁有自己的邏輯思維。透過其他見識的增加,邏輯思維也能獲得補充。

但是程式設計賦予孩子的更具理性化,也更趨嚴謹。

最重要的是,少兒程式設計能將這種邏輯思維帶入孩子的成長過程中,使其更早從理性邏輯思維中獲得助益!

Top