計算機學(xué)科不是一門純粹的軟件學(xué)科,與軟件工程學(xué)科相比,更多的方向仍然落在計算機本身。計算機學(xué)科實際上是一門軟硬兼施的學(xué)科。因此,計算機基礎(chǔ)不只是指計算機軟件工程。
計算機學(xué)科不應(yīng)被視為一門基礎(chǔ)學(xué)科,而應(yīng)被視為一門高度交叉的應(yīng)用學(xué)科。而數(shù)學(xué)與其理論聯(lián)系是較為緊密的。我們的目標(biāo)只是作為一個互聯(lián)網(wǎng)企業(yè)的計算機相關(guān)從業(yè)者,而不是當(dāng)一個計算機原理方面的工程師。對于大多數(shù)程序員來說,可能無法理解復(fù)雜的計算理論和計算機進(jìn)化的基本數(shù)學(xué)推導(dǎo),但是也不需要去理解。
雖然我們不需要知道計算機的計算理論,但需要知道它包含著基本的數(shù)學(xué)思想。為什么經(jīng)常聽到那些數(shù)學(xué)好的人也很擅長編程,其實這些都是從側(cè)面驗證數(shù)學(xué)邏輯思維能力對學(xué)習(xí)編程的影響,其實數(shù)學(xué)思維較為直觀的體現(xiàn)就是邏輯思維能力。
我們需要遵循語法的組合邏輯、語言的編碼標(biāo)準(zhǔn)、既定的協(xié)議標(biāo)準(zhǔn)和成熟的調(diào)用接口。這意味著一個程序的設(shè)計一行一行由字符和字母組合而成的管理,有著嚴(yán)格的邏輯控制標(biāo)準(zhǔn)。
因此,雖然這一部分的基礎(chǔ)是計算機學(xué)科的基礎(chǔ),但決定大多數(shù)程序員和編程能力上限的是努力程度。