鄭州北大青鳥(niǎo)老師,程序員的哲學(xué)之我見(jiàn)
“程序員的哲學(xué)”這樣的命題,對(duì)于老資歷的程序員似乎都有點(diǎn)大了,何況初出茅廬的我呢。但做為北大青鳥(niǎo)鄭州校區(qū)的一員,這里我只想對(duì)正在和希望從事程序開(kāi)發(fā)工作的朋友分享我對(duì)程序開(kāi)發(fā)的理解。這是我的哲學(xué),我所理解的程序員的哲學(xué)。
首先跟大家分享這樣一段話(huà):
“我們剖析事物的本質(zhì),從中形成概念,并根據(jù)需要賦于它重要性。這一切很大程度上是源于我們所使用的語(yǔ)言已經(jīng)在其形式中包含了一套為它的使用者所完全接受的規(guī)范,而我們正屬于接受這一規(guī)范的那群人。如果我們拒不接受語(yǔ)言在數(shù)據(jù)的組織與分類(lèi)方面的原則的話(huà),那我們根本就沒(méi)法說(shuō)話(huà)。”
——Benjamin Lee Whorf(1897-1941)
無(wú)論你是有數(shù)年開(kāi)發(fā)經(jīng)驗(yàn)的程序高手,還是初識(shí)編程的青澀小生。我都希望你能將這段話(huà)多讀上幾遍,細(xì)細(xì)的品味其中的內(nèi)蘊(yùn)。它會(huì)為你揭秘程序開(kāi)發(fā)的本質(zhì)。
那么什么是程序呢?
不同的教科書(shū)對(duì)它的解釋不盡一致,讓我們來(lái)一起看下它的百度名片:
程序(program)是為實(shí)現(xiàn)特定目標(biāo)或解決特定問(wèn)題而用計(jì)算機(jī)語(yǔ)言編寫(xiě)的命令序列的集合;為實(shí)現(xiàn)預(yù)期目的而進(jìn)行操作的一系列語(yǔ)句和指令……
從以上定義,我們不難發(fā)現(xiàn)這樣的關(guān)系圖:

通過(guò)對(duì)上圖的感知,朋友們對(duì)程序的認(rèn)知是否清晰了些許呢?原來(lái)程序就是一段話(huà),一段語(yǔ)言描述,只是其中的句讀,在程序員和計(jì)算機(jī)的世界里被稱(chēng)為命令、指令。對(duì)計(jì)算機(jī)工作原理不太了解的朋友可能會(huì)問(wèn),“計(jì)算機(jī)為什么不自己去解決問(wèn)題和實(shí)現(xiàn)目的呢,計(jì)算機(jī)不是自動(dòng)化和智能化的產(chǎn)物嗎?”關(guān)于這個(gè)問(wèn)題我們可以在《Thinking In Java》這本書(shū)中找到如下描述:
“計(jì)算機(jī)革命的推動(dòng)力在于機(jī)器。于是機(jī)器的發(fā)展也左右了編程語(yǔ)言的發(fā)展。然而真正被用作延伸智力的工具的計(jì)算機(jī)(就像Steve Jobs喜歡說(shuō)的,‘思想的自行車(chē)’)并不很多,它們更多的是被用來(lái)表達(dá)思想。”
不知道上面的描述,能否起到拋磚引玉的效果。我只是想告訴朋友們,計(jì)算機(jī)雖然隨著科技的發(fā)展結(jié)構(gòu)日趨復(fù)雜,功能日趨強(qiáng)大,但它更多的仍被用來(lái)表達(dá)思想。什么思想呢?解決問(wèn)題的思想,實(shí)現(xiàn)目的的思想——讓計(jì)算機(jī)實(shí)現(xiàn)一個(gè)預(yù)期結(jié)果的算法。
在我看來(lái)歸根到底所有程序都是算法,都是從問(wèn)題空間指向解決空間的一個(gè)映射(示圖如下)。

什么是問(wèn)題空間(問(wèn)題模型)呢?說(shuō)白了它就是需求,對(duì)于小的程序它是預(yù)期的結(jié)果,對(duì)于大的項(xiàng)目它是項(xiàng)目需求。什么是解決空間呢?它是工具,包含硬件(計(jì)算機(jī)或其它各種設(shè)備),也包含軟件(前輩們?yōu)槲覀兞粝碌拈_(kāi)發(fā)平臺(tái),高級(jí)語(yǔ)言,編程思想)。
而程序員的工作就在于算法,在于通過(guò)算法將問(wèn)題空間和解決空間關(guān)聯(lián)在一起,從而達(dá)到解決問(wèn)題的目的。無(wú)論是使用哪種語(yǔ)言的程序員,其哲學(xué)都是相通的,甚至是相同的。區(qū)別僅在于使用的工具不同罷了。個(gè)人心得,僅供參考,卑之無(wú)甚高論。鄭州北大青鳥(niǎo)老師,真誠(chéng)的歡迎與每一位愛(ài)好程序,喜歡程序的人共同交流,共同成長(zhǎng)!
更多相關(guān)北大青鳥(niǎo)鄭州校區(qū)的相關(guān)文章可訪(fǎng)問(wèn):http://
本文由站河南北大青鳥(niǎo)校區(qū)整編而成,如需了解更多IT資訊類(lèi)的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問(wèn)題,可以對(duì)在線(xiàn)咨詢(xún)老師進(jìn)行一對(duì)一問(wèn)答!
推薦資訊
- 鄭州北大青鳥(niǎo)學(xué)電腦更專(zhuān)業(yè),值得... 2013-02-24
- 河南北大青島學(xué)校怎么樣?... 2019-04-30
- 鄭州技校都有什么專(zhuān)業(yè)適合男孩... 2021-02-20
- 河南北大青鳥(niǎo)關(guān)注鄭州煤氣管道斷... 2012-04-01
- 鄭州北大青鳥(niǎo)與您關(guān)注互聯(lián)網(wǎng)企業(yè)... 2012-04-08
熱點(diǎn)資訊
- 鄭州北大青鳥(niǎo)翔天信鴿校區(qū)的學(xué)員... 2023-11-14
- 鄭州北大青鳥(niǎo)校區(qū)創(chuàng)意與趣味的游... 2023-11-07
- 鄭州北大青鳥(niǎo)學(xué)子們的項(xiàng)目成果展... 2023-10-18
- 鄭州北大青鳥(niǎo)校區(qū)讓學(xué)習(xí)不在枯燥... 2023-09-19
- 在鄭州北大青鳥(niǎo)翔天信鴿校區(qū)零基... 2023-09-01