色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

編程是一門藝術(shù)嗎?

  2006-10-23

  英文原文:Is Programming an Art?

  僅僅使用軟件的人們 通常意識不到編寫軟件有多么困難。噢,設(shè)計部分和最初開發(fā)部分都很有趣。最困難的部分是使其正確運(yùn)行(且運(yùn)行速度足夠快)。對于程序員而言,這就好比一餐開始時是美味的雙層牛奶巧克力咖啡干酪餅,而結(jié)束時卻是菠菜奶油沙司。

  之所以說編程仍是一門藝術(shù)而不是一門科學(xué)或工程學(xué)科,是因為我們還不能將其分解成多個組成步驟,而后機(jī)械地進(jìn)行。一旦我們在此方面獲得成功,在某種程度上就會出現(xiàn)一種新的可能性:在編程時采用以人為本的設(shè)計語言 (PODL) 編寫程序,通過編程來證明程序的正確性以及分析和支持語義查詢。然而到那時,編程依然是一門藝術(shù),也就是其中含有那么多傳統(tǒng)智慧。

  但是,如同許多傳統(tǒng)智慧一樣,此類比經(jīng)不起進(jìn)一步推敲。事實上,編制程序(我干這行已經(jīng)有 20 多年了)根本一點都不像藝術(shù) —— 至少不像寫小說(我干這一行也已經(jīng)有 20 多年了)那樣的藝術(shù)。讓我用兩個片段(一個程序片段和一個散文片段)來說明我的觀點吧。

  第一個片段是一個用于分析 Visual C++® 7.1 的詞法分析程序的一部分。該片段如下所示:

if ( index >= TokenID::lastKeyword() ) {
string token = tokenString( index );
if (( isdigit( token[ 0 ] )) || ( token[0] == ‘-’ )) {
#ifdef TELL_ME
display( "!! TokenSet::tokenIdentify: ", "文字?jǐn)?shù)字:", token );
#endif
return TokenID::TK_Literal;
}
} if ( index >= TokenID::lastKeyword() ) {
string token = tokenString( index );
if (( isdigit( token[ 0 ] )) || ( token[0] == ‘-’ )) {
#ifdef TELL_ME
display( "!! TokenSet::tokenIdentify: ", "文字?jǐn)?shù)字:", token );
#endif
return TokenID::TK_Literal;
}
}

it知識庫編程是一門藝術(shù)嗎?,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 民和| 青神县| 兖州市| 呼和浩特市| 宽城| 三门县| 凤城市| 怀远县| 海口市| 明溪县| 祁门县| 天等县| 林甸县| 彩票| 金昌市| 从江县| 平谷区| 西华县| 黄骅市| 鄂尔多斯市| 昭觉县| 池州市| 城市| 亳州市| 旬邑县| 油尖旺区| 闵行区| 伊宁县| 商城县| 定结县| 大同市| 汝阳县| 靖安县| 龙山县| 文安县| 东海县| 通州市| 海伦市| 邯郸县| 咸丰县| 桃源县|