程序是什麼,邏輯是什麼

程序中邏輯,或許有些朋友卻是理解得不夠清楚,在此,我稍微說一下我的見解,作爲大家的一個參考,如有不合適之處,請指出。      說的抽象些,或者上升到哲學的層次來說,所謂邏輯,是宇宙運行的根本基礎。邏輯可以簡化理解爲佛教的“因果循環”。因果循環,指的是萬事的發生都是有原因的,結果又會對起因一個反饋。這樣就不斷的促進這個因果循環。當然,我們這裏探討的是宇宙哲學的一點,佛教的只不過是一個引用,請勿陷入理解誤區。      當然,我們探討的是一個事物的邏輯,不受個人情感的影響,更不是宗教學派的說法,而是一種自然規律。下面來具體討論一下程序中的邏輯。     所謂“一花一世界”,說的是,即使是一個微小的個體,也能體現一個世界的全貌。正如“麻雀雖小,五臟俱全”道理相似。原因在於,每一個在同一個宇宙這種存在的事物,都是受同一個規律而存在的,所以觀察一個事物就可以看到隱藏在事物後面的規律。而這個規律正是所有事物遵從的一個準則。      回到程序,細想一下程序。什麼是程序?我想各位第一反應必然是教科書上說的解釋吧。但是發散你的思維,想想生活中的點滴,你有什麼啓發。我們去看病走的流程,辦理各種手續走的過程,做一件事(分解成每一步直到完成),等等,你想到了什麼?知道什麼樣的編程水平叫高嗎?爲什麼大師和普通人編程的代碼不一樣?如果你沒有想清楚,接着往下看。     就我的個人認爲,程序是一個邏輯的過程。不管是線性執行還是非線性執行,都是邏輯的結果。甚至在未來的人工智能程序,同樣是在邏輯規律的運作下執行。不要以爲邏輯是線性的,非線性的就不是邏輯。邏輯是一種規律,是宇宙的自然規律。宇宙形成,規律就已經成型,邏輯是所有規律的統稱。自然規律是不可能人爲改變的,我們所做的只是利用規律來應用。比如說我們利用數學的奇偶數可以實現間隔的應用,比如顏色間隔背景顯示。那麼,簡單來說,程序就是邏輯,是一個完成特定功能的完整的邏輯體系。所以說,只要程序有問題,不能完美的完成特定功能,那就是邏輯問題。或許這樣說你還是迷糊,那我們來具體探討程序裏的邏輯。      程序是一個邏輯題,我想這個你肯定認同,但是爲什麼一句話的錯誤也會是邏輯錯誤呢?那麼我問一下,程序中什麼叫做邏輯?      某一句話出錯不是邏輯,漏寫(或多寫)某一句話,調用順序錯誤,函數、宏的參數引入錯誤等不是邏輯的話,那什麼是邏輯?那函數裏的每一條語句也不是邏輯吧。這個問題我以前思考了無數遍,到底程序中什麼是邏輯呢?1+1=2就是邏輯嗎?程序語句一句句執行不是邏輯嗎?所有語句執行完成一個功能就是邏輯嗎?我想,是不是那些高深的算法才叫邏輯呢?事實上,大多數的程序員都把那些高深的算法稱作邏輯,而把自己寫的代碼函數稱作非邏輯,認爲只是幾句語句而已。但是這樣的話,我越來越覺得邏輯就沒道理了。那把高深算法細分的話,內部還是簡單的語句,這樣說不和我們平常寫的簡單語句一樣嗎?然後我覺得可能是實現算法的思想吧。但是回過頭來想,代碼不就是實現思想的嗎,不就是實現邏輯的東西嗎?那隻要完成了功能的不就是邏輯嗎,只不過簡單的功能邏輯簡答罷了。      再後來,恍然大悟。生活中處處都是邏輯。不管是程序邏輯,還是說話邏輯,還是業務邏輯,還是各種邏輯。存在即邏輯。所以說,錯誤必然是邏輯錯誤。那麼,漏一句多一句都會導致邏輯過程中斷或者跑偏而完成不了特定功能,調用順

序錯亂,那這不是更加明顯。程序裏的邏輯,就是語句的語法、語句順序,語句分支等,而函數只是程序的一個執行路徑而已,同樣也是邏輯裏的組成,其他的都是。而語法問題,表面上來說是編譯不通過,其實在底層一點就是編譯器檢測到邏輯不通,只不過這種錯誤是能夠檢測到的簡單的邏輯錯誤,而用戶在滿足語法規則出錯的是業務邏輯錯誤。所以,以後出現錯誤,千萬不要說沒有邏輯錯誤,如果程序沒有邏輯錯誤,那就沒有錯誤了。認真細緻對待程序中的每一個錯誤,即使是一個分號,都可以讓程序無法運行,不要對這些掉以輕心。一個合格的程序員,必然是邏輯思維很強的,邏輯嚴密的,絕不是認爲某些錯誤無關緊要的。而邏輯思維就是在每一個編程中慢慢鍛煉出來的,對每一個錯誤認真對待,解決,總結,然後多了就能夠提升。程序員是一個專門跟邏輯打交道的職業,這些必須深刻認識,方可讓自己水平有大幅度的提升,而不是具體糾結語法等,重點在於思想的培養。而大師的厲害之處就是在於思想。這點應該很容易理解。爲什麼有的人能夠寫出大框架,有的能夠開發新語言,那是因爲思想達到一定高度,這些就不是問題了。      選擇程序員,就是選擇了邏輯,請認真對待邏輯。相信看着這些之後,你的認識會有所變化,祝你好運。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章