[導(dǎo)入]多談結(jié)構(gòu),少談OO
Posted on 2006-03-04 23:54 canonical 閱讀(1327) 評(píng)論(4) 編輯 收藏 所屬分類: 設(shè)計(jì)理論
我其實(shí)很少談到OO這個(gè)概念,一般情況下我只提結(jié)構(gòu)的表達(dá)與結(jié)構(gòu)的控制。軟件開發(fā)是一個(gè)從二進(jìn)制指令構(gòu)造出一些高級(jí)結(jié)構(gòu)的過程。無論是PO, OO,
還是XO,
只要它能有效的降低這種結(jié)構(gòu)構(gòu)造過程的復(fù)雜性,能夠增強(qiáng)我們對(duì)程序結(jié)構(gòu)的表達(dá)和控制能力,那么它就是有價(jià)值的。在我看來,繼承(inheritance)
必然是有用的,因?yàn)樗且环N表達(dá)推理結(jié)構(gòu)的方式而無論它的概念詮釋是什么。行為函數(shù)聚合在對(duì)象的名義下是有意義的,因?yàn)樗沟眠@些關(guān)聯(lián)得以明確化,靜態(tài)
化。為什么函數(shù)式編程是有效的,它和OO是什么關(guān)系。說白了,F(xiàn)P能夠方便的表達(dá)OO不易表達(dá)的結(jié)構(gòu)。xml與OO是否是沖突的?xml能夠方便的表達(dá)結(jié)
構(gòu),通過dtd或者xml schema又可以方便的實(shí)現(xiàn)對(duì)結(jié)構(gòu)的約束(動(dòng)態(tài)的類型系統(tǒng)?)。
級(jí)列設(shè)計(jì)理論要求我們所有的討論必須在一個(gè)統(tǒng)一的模型(最廣義的模型)下進(jìn)行。OO與非OO的思想其共同之處是什么,它們?cè)谑裁磳用嫔鲜墙y(tǒng)一的?無論是 OO還是PO,都可以歸結(jié)為結(jié)構(gòu)問題。所以我多談結(jié)構(gòu),少談OO。兩個(gè)不同的概念,可能意味著它們處于復(fù)雜性的不同級(jí)列(可以實(shí)現(xiàn)平滑的過渡),也可能意 味著它們之間是正交的,互補(bǔ)的
級(jí)列設(shè)計(jì)理論要求我們所有的討論必須在一個(gè)統(tǒng)一的模型(最廣義的模型)下進(jìn)行。OO與非OO的思想其共同之處是什么,它們?cè)谑裁磳用嫔鲜墙y(tǒng)一的?無論是 OO還是PO,都可以歸結(jié)為結(jié)構(gòu)問題。所以我多談結(jié)構(gòu),少談OO。兩個(gè)不同的概念,可能意味著它們處于復(fù)雜性的不同級(jí)列(可以實(shí)現(xiàn)平滑的過渡),也可能意 味著它們之間是正交的,互補(bǔ)的