大家經(jīng)常聽(tīng)說(shuō)“學(xué)編程可以培養(yǎng)編程思維”,而編程思維是什么?學(xué)編程和培養(yǎng)編程思維有什么聯(lián)系你知道嗎?
一、什么是編程?
在了解編程思維之前,首先,小編要和大家說(shuō)一說(shuō)什么是編程。
編程就是和電腦對(duì)話,用電腦能聽(tīng)懂的語(yǔ)言,告訴它我們想讓它做的事情。
舉個(gè)例子:
如果我們想要休息,我們會(huì)搬個(gè)凳子,放下,然后坐上去休息。
如果我們想讓電腦聽(tīng)懂這句話,就需要這么和電腦表達(dá):
步驟:
1、定義對(duì)象:什么是“凳子”;
2、把凳子向上移動(dòng)20厘米;
3、往前移動(dòng)兩米;
4、把凳子向下移動(dòng)20厘米。
這樣,電腦就完成了我們想要它做的事情。
所以,相比于人類之間交流的隨意與感性,和電腦對(duì)話時(shí),必須具備嚴(yán)謹(jǐn)、理性的思路,每一步都要給出準(zhǔn)確的指令,這樣就能讓電腦按照自己的想法行動(dòng),不會(huì)讓結(jié)果跑偏。
想要讓電腦聽(tīng)懂我們說(shuō)的話,需要讓自己變得理性、嚴(yán)謹(jǐn),思維具有條理。當(dāng)我們?cè)囍鴱碾娔X的角度去思考問(wèn)題時(shí),也就學(xué)習(xí)并鍛煉到了我們常說(shuō)的“編程思維”。
二、編程思維是什么?
很多人都聽(tīng)過(guò)編程思維,但對(duì)它了解的卻不多,甚至?xí)a(chǎn)生這種誤解——編程思維就是編程算法。
其實(shí),編程思維并不是編寫(xiě)程序的技巧,而是一種高效解決問(wèn)題的思維方式,它是“理解問(wèn)題——找出路徑”的高效思維過(guò)程,由分解、模式識(shí)別、抽象、算法四個(gè)步驟組成。
01、分解
鍛煉拆解復(fù)雜問(wèn)題的能力
分解,就是把一個(gè)復(fù)雜的大問(wèn)題,拆解成更可執(zhí)行、更好理解的小步驟。
假如,要為自己全家人做一次出游規(guī)劃,“全家旅游規(guī)劃”聽(tīng)起來(lái)非常龐大、繁瑣,而懂得“分解”的話,就可以把這個(gè)大難題分解成幾個(gè)容易解決的小步驟:確立目的地、安排行程、預(yù)定機(jī)票和酒店、準(zhǔn)備行李清單。
所以,在學(xué)習(xí)編程的過(guò)程中,就是在不斷地訓(xùn)練他們把復(fù)雜的問(wèn)題拆解、理順的過(guò)程。這個(gè)過(guò)程是解決問(wèn)題的基礎(chǔ),把問(wèn)題拆解清楚,才有接下來(lái)實(shí)現(xiàn)的可能。
02、模式識(shí)別
發(fā)現(xiàn)并整合“重復(fù)規(guī)律”的能力
模式識(shí)別,就是識(shí)別不同問(wèn)題的模式和趨勢(shì)(共同點(diǎn))的過(guò)程,在我們的經(jīng)驗(yàn)庫(kù)里找出類似問(wèn)題的解決辦法,套用解決。識(shí)別的模式越多,解決問(wèn)題的速度也就越快。
例如,如果需要畫(huà)100只貓,你會(huì)怎么辦?是找100只貓來(lái)臨摹還是找出貓的“模式”?
對(duì)貓進(jìn)行模式識(shí)別,我們會(huì)發(fā)現(xiàn)貓有這些共同點(diǎn):有眼睛、耳朵、尾巴、四條腿……
我們根據(jù)這些特點(diǎn)建立起貓的“模式”,按照這個(gè)模式就能批量畫(huà)貓了。不用每次畫(huà)一個(gè)新動(dòng)物,只需要變換局部特征(例如毛發(fā)顏色、尾巴長(zhǎng)短)就能輕松解決。
這樣看來(lái)效率是不是瞬間飆升N倍?
在編程過(guò)程中,其實(shí)我們一直在進(jìn)行著這樣的訓(xùn)練,當(dāng)發(fā)現(xiàn)一些可重復(fù)的步驟,就會(huì)把它們整合起來(lái),建立模式;再遇到類似問(wèn)題時(shí)就能讓計(jì)算機(jī)套用此模式,快速解決。
03、抽象
鍛煉找出問(wèn)題本質(zhì)的能力
抽象,是指聚焦最重要的信息,忽視無(wú)用細(xì)節(jié)。簡(jiǎn)單來(lái)說(shuō)就是找到問(wèn)題的本質(zhì),過(guò)濾掉其他無(wú)關(guān)緊要的因素。
例如,面前有一套房子,我們看到的是這樣的:
但是在建筑師眼中,這套房子可能是這樣的:
通過(guò)抽象,建筑師過(guò)濾掉對(duì)他來(lái)說(shuō)無(wú)用的因素,找到了房子最重要的信息。
抽象思維,能夠讓我們?cè)诖罅啃畔⒅凶プ£P(guān)鍵信息,提高學(xué)習(xí)效率。
04、算法
鍛煉高效解決問(wèn)題的能力
算法,是一步步解決問(wèn)題的過(guò)程。根據(jù)前面對(duì)問(wèn)題的分析與理解,設(shè)計(jì)每一步的路徑方法,解決整個(gè)問(wèn)題。
在具體解決問(wèn)題的過(guò)程中,最關(guān)鍵的是邏輯思維能力和調(diào)試糾錯(cuò)能力。
計(jì)算機(jī)程序需要很強(qiáng)的邏輯性,邏輯順暢才能順利運(yùn)行。例如,正確代碼呈現(xiàn)出的五角星動(dòng)態(tài)圖這樣的:
而只是把其中兩行代碼交換下順序,結(jié)果就成了這樣:
所以,我們需要嚴(yán)格遵循編程的規(guī)則,把解決問(wèn)題的步驟轉(zhuǎn)換成計(jì)算機(jī)能理解的語(yǔ)言。在這個(gè)過(guò)程中,我們的邏輯思維能力能得到很好地鍛煉。
而調(diào)試糾錯(cuò),就是當(dāng)出現(xiàn)結(jié)果與預(yù)期不符時(shí),需要找出算法之中的漏洞并解決。
在編程練習(xí)中,任何一行代碼出問(wèn)題,程序都會(huì)出錯(cuò)無(wú)法正常運(yùn)行下去。這時(shí),就必須要自己一步步執(zhí)行步驟、梳理邏輯,找出問(wèn)題并想辦法解決。
蘋(píng)果CEO喬布斯曾說(shuō)過(guò):“每個(gè)人都應(yīng)該學(xué)習(xí)編程,因?yàn)樗虝?huì)你如何思考?!本幊趟季S在各個(gè)行業(yè)都用得到,是未來(lái)人工智能時(shí)代每個(gè)人都應(yīng)具備的一種思維,先人一步學(xué)習(xí)編程,快人一步把握未來(lái)機(jī)遇。
Copyright ? 2013-2021 河南云和數(shù)據(jù)信息技術(shù)有限公司 豫ICP備14003305號(hào) ISP經(jīng)營(yíng)許可證:豫B-20160281