這是「帥爸兒童程式教育學苑」的第3篇文章,by帥爸P小編前一篇文章跟大家提及了「兒童程式設計到底在教什麼?」裡頭概略的提到了程式設計對「運算思維」、「創造力」、「邏輯思維」這三個能力的養成有很大幫助,今天呢!帥爸小編想跟大家聊聊對於讓孩子早點接觸程式設計的一些觀點.沒有家長不在乎孩子未來發展的,如果您對於孩子到底要不要學習程式設計這件事有困惑的話,不如這麼思考好了.讓孩子學習程式設計,是為了:讓他日後多一個職業選擇的機會不管他最後是否會成為程式設計師,至少他,理解程式設計的世界是如何運行的,工作內容大致上有什麼?有什麼工作類型是跟程式語言相關的?我若決定成為程式設計師,我的強項是哪一塊?我有興趣的範疇在哪?保持對科技的高度敏感度,對孩子未來的職涯發展絕對會有助益的. 訓練孩子用程式設計思維來思考事情前面的文章有提過,「用電腦的思考方式來思考事情」是一種解決問題的能力.因為電腦為了有效率的運作,必須開發很多演算法來優化以及處理事件.這類的演算法大多跳脫舊有框架的思維,更是以尋常人不會優先想到的方式來處理.舉個例子,在程式世界裡 為了解決「排隊」這件事,設計了一些處理原則,即所謂的「堆疊」.有3個動物依序進入一個房間,青蛙→白兔→小貓,待要出門的時候,請問誰該先去呢?「程式」的答案是,小貓→白兔→青蛙.這種先進後出的處理方式叫做FILO(FirstInLastOut).為什麼是倒著處理呢?對先進去的青蛙來說太不公平了吧!其實在程式的世界,「公平」通常不是最先被考量的關鍵,當然,這在人類的排隊世界中,是很不被容許的.但是FILO解決了空間不被浪費的問題,東西被放進某空間(堆疊)後,在處理完之前並不需要移動位置,其次,處理完的自動移除,新進來的直接佔有騰出來的位置,就不會有空間被浪費的問題.瞧~~是不是很跳脫我們既有的思維呢?這樣的程式思維應用其實也很生活化喔!像是捷運列車開到總站後,就是這樣設計的,比較後進來的列車會先開走;演唱會的入場順序,通常會安排搖滾區靠近舞台的人先進去,演唱會結束後,最靠近舞台的人通常會比較晚出來.當然,你要插隊快跑到別人前面跑掉,那樣的行為是不在討論範圍內的. 培養孩子的團隊合作力、跨界思考力程式的世界是複雜且多工運行的,別想著好像就一個人關在房間裡默默地跟電腦拼鬥而已,更多時候更講求的是團隊合作!一個龐大的程式靠一己之力完成實在太不科學了!另外,跨界、跨領域甚至跨國合作也是必然之勢,孩子有幸成為程式設計師,與世界各國很多的程式設計師一起燒腦的感覺,在成果出來的那一刻,絕對令人振奮!相信我,他的日子鐵定過的遠比你想像中的更富挑戰和有成就感. 培養開闊視角與遠大格局我們時常驚訝一些創舉的發明根本超乎一般人的思維,但你是否有想過,這些發明者都是站在巨人的肩膀上在思考事情的!所以他能剖析使用者的視角,賦予產品更偉大的格局與應用.舉個例子,世界上第一支手機是1973年在Motorola實驗室被發明出來的, 第一支手機 DydaTAC8000X,大約有兩個磚頭那麼大,充電10小時卻只能通話35分鐘,而且還只有單純的撥打和接聽功能,其他啥事也做不了.相比我們現在的智慧型手機,連錢包功能都被整併進去,出門可不帶錢包,但不帶手機可是讓很多人焦慮萬分啊!而手機的演進絕對也跟程式的演進脫不了關係,除了強大的硬體改良作為後盾外,軟體程式的飛快進展也是促使產品更優化的重要推手.想想,如果當年沒有這些優秀或者該說想得比較遠、比較多、想得比較奇怪的程式設計師投身其中,我們還能如此「智慧」的生活著嗎?想了解更多「兒童程式設計」、「兒童程式教育」、「手機成癮」、「網路成癮」、「運算思維」議題,請關注帥爸的部落格,帥爸有很多觀點想與你分享.https://www.ask88.org/