大部分高級編程語言雖然語法不同,編譯器不同,學習它們的小哥哥小姐姐們不同,但有一點卻是出奇地一致:編程邏輯! 有些剛入行或剛入門的童鞋可能連編程是啥意思都沒弄懂,一下子又來了個「邏輯」,那是什麼?這裡說的邏輯,廣義上指的是抽象思維能力,也就是能思考那些客觀世界不存在的東西的能力。狹義上來說,就是明確 ...
大部分高級編程語言雖然語法不同,編譯器不同,學習它們的小哥哥小姐姐們不同,但有一點卻是出奇地一致:編程邏輯!
有些剛入行或剛入門的童鞋可能連編程是啥意思都沒弄懂,一下子又來了個「邏輯」,那是什麼?這裡說的邏輯,廣義上指的是抽象思維能力,也就是能思考那些客觀世界不存在的東西的能力。狹義上來說,就是明確地告訴編程語言,我們希望它乾什麼(what)以及怎麼乾(how)。
比如,大部分人除周末外,每天都是上班、吃飯、下班、睡覺這四個標準動作,而且這四個動作是一個接著一個完成的(不過對於某些從事特殊工作的童鞋來說,順序可能是吃飯、上班、下班、吃飯、睡覺。不管怎麼組合,起碼都是一個挨著一個依次完成的)。
在編程界,這種一個挨著一個依次完成的工作,叫「順序邏輯」。如圖:
但有些童鞋就沒那麼幸運了,中間出了點變數,沒法按照原來的順序依次完成了,為什麼呢?
像這種「在」或「不在」的情況,在編程界,也有一種叫法:「分支/條件邏輯」。意思是:如果條件滿足,就做A事;如果條件不滿足,就做B事。
除此之外,編程界還有另外一種常見的邏輯,叫「迴圈邏輯」。如果把之前每天要做的事情串在一起叫順序的話,那麼從周一到周五,每天做相同的事,這種情況就叫「迴圈」。
當然,編程中的邏輯其實不止這三種(順序、分支、迴圈),但這哥仨是被用得最多的,另外兩個也有,但出現的場合不那麼多,可以在需要他倆出現的時候再說。
另外:編程邏輯在軟體開發中還有一個比較官方的稱呼,叫做「控制流」。
ps:感興趣的童鞋可以查查這隱藏的兩兄弟叫什麼?(這個問題沒有標準答案,依據個人理解而定)