數(shù)學(xué)對于編程有多重要?

首先,編程(programming)對于各人有不同意義。

對于一般程序員來說,編程是實現(xiàn)用戶需求的過程,產(chǎn)出的是代碼和可運行的軟件。

對Knuth來說,《The Art of Computer Programming》是談編程。一般人認(rèn)為那是談算法。

對開發(fā)編譯工具的人來說,編程就是編寫合符語法的字符串,通過編譯器生成能正確執(zhí)行的程序。

對各種計算機應(yīng)用領(lǐng)域研究(計算機圖形學(xué)、計算物理、機器學(xué)習(xí)、密碼學(xué)……)的人來說,編程就是實現(xiàn)各種實驗的工具。當(dāng)然有一些部分最終也可能成為應(yīng)用軟件。

編程是計算機科學(xué)的子集。而計算機科學(xué)涉及的數(shù)學(xué)很多,以計算機所有分支(計算機圖形學(xué)、計算物理、機器學(xué)習(xí)、密碼學(xué)……)涉及的數(shù)學(xué)來說明編程需要很多數(shù)學(xué),似乎并不洽當(dāng)。

我嘗試單純從一般編程的情況,列出當(dāng)中與數(shù)學(xué)的相關(guān)性。

許多編程的構(gòu)成部分,如整數(shù)、實數(shù)、變量、常量、運算符、函數(shù)、參數(shù)、布爾運算等,都是沿自數(shù)學(xué)上的概念/名字。但在編程中,我們要知道它們和原來的數(shù)學(xué)概念不一樣的地方。

例如,由于計算機只能表示有限的數(shù)字,所使用的整數(shù)只能是整數(shù)集的有限子集,并可使用同余算術(shù)。同理,計算機也不能表示實數(shù)集,通常是使用浮點數(shù)或定點數(shù)這些有限子集。編程中的純函數(shù)基本上與數(shù)學(xué)中的函數(shù)概念相同,可以用上單射、滿射、雙射、反函數(shù)學(xué)數(shù)學(xué)概念。

有一些編程的構(gòu)成部分使用了編程專門的術(shù)語,但實際上和數(shù)學(xué)的概念幾乎一樣。例如

一維數(shù)組(1D array) -> 矢量(vector)/多元組(tuple)

二維數(shù)組(2D array)-> 矩陣(matrix)

另外,大部分編程語言不直接支符號計算(symbolic calculation),而只是對表達(dá)式進(jìn)行求值(evaluation)。

在很多場合,編程需要使用到算法,而算法涉及很多數(shù)學(xué)。但除算法以外,在一般的編程中,我想到涉及數(shù)學(xué)的部分并不多。

編程時除了考慮正確性及性能,還要考慮很多軟件工程上的因素,如內(nèi)聚性、耦合性、可讀性、可擴展性、可測試性等。一般編程需要一些基本的數(shù)學(xué)知識,但說「編程就是數(shù)學(xué)」并不洽當(dāng)。

--

補充:幾年前讀《Elements of Programming (豆瓣)》時,就因數(shù)學(xué)基礎(chǔ)不好讀不太懂,然后就去學(xué)抽象代數(shù)。不過這本書談及的內(nèi)容是否對編程很有幫助,就是見仁見智了。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 原文鏈接:https://github.com/EasyKotlin 值就是函數(shù),函數(shù)就是值。所有函數(shù)都消費函數(shù),...
    JackChen1024閱讀 6,360評論 1 17
  • 計算機編程語言可用于將指令傳達(dá)給計算機。它們基于某些句法和語義規(guī)則,定義了編程語言中每種結(jié)構(gòu)的含義。 現(xiàn)在我得到了...
    幻凌風(fēng)閱讀 8,582評論 1 26
  • 1 大學(xué)一個同學(xué),林小妹,英文名CASE,,射手座O型女。天生被愛幻想癥,行為怪異,思想單純,經(jīng)常愛做一些常人無法...
    小眼魚子ing閱讀 340評論 0 1
  • 孩子是什么 父母又是什么 沒有經(jīng)驗主要是自己頭腦里一片空白的陪伴 我缺少的是什么 我關(guān)注的又是什么
    花房姑娘1987閱讀 139評論 0 0
  • 電影《霸王別姬》里有這么一句臺詞:“人,得自個兒成全自個兒。”沒有人能夠隨隨便便就站在眾人矚目的位置,所有星光璀璨...
    默默Elain閱讀 458評論 0 1

友情鏈接更多精彩內(nèi)容