<P>所謂<FONT color=#0000ff>面向?qū)ο蟮脑O(shè)計(jì)</FONT>就是指通過(guò)<FONT color=#0000ff>建立一些類(lèi)以及它們之間的關(guān)系</FONT>來(lái)<FONT color=#0000ff>解決實(shí)際問(wèn)題</FONT>(類(lèi)及關(guān)系解問(wèn)題)。</P>( n9 L* w- _- h1 C
<P>面向?qū)ο蟮脑O(shè)計(jì)就是要學(xué)會(huì)用"<FONT color=#0000ff>類(lèi)</FONT>"來(lái)思考問(wèn)題,首先要想到程序要處理的是什么而不是它要完成什么功能。</P># t7 Q: H8 I! }
<P><FONT color=#0000ff>確定類(lèi)有一些原則</FONT>,首先是從問(wèn)題中歸納出需要描述的概念或?qū)嶓w,從這些概念和實(shí)體出發(fā)去建立相應(yīng)的類(lèi)。(如要建立一個(gè)家庭書(shū)庫(kù),則這里可以歸納出一個(gè)描述書(shū)的類(lèi))</P>! b5 b5 t7 g/ j1 ]$ }2 t" S
<P>這些原則中很<FONT face=黑體 color=#ff0000>重要</FONT>的是應(yīng)當(dāng)<FONT color=#ff0000>盡量使類(lèi)小而簡(jiǎn)單</FONT>,使它能夠被一般的程序員所理解,因?yàn)樾《?jiǎn)單的類(lèi)<FONT color=#ff0000>容易實(shí)現(xiàn)</FONT>,如果想設(shè)計(jì)一個(gè)面面俱到的類(lèi),往往會(huì)使類(lèi)太復(fù)雜而無(wú)法使用,要記住,<FONT face=黑體 color=#ff0000>類(lèi)是要拿來(lái)用的,而且必須易于使用</FONT>。如果要考慮復(fù)雜的概念,可以從簡(jiǎn)單的概念開(kāi)始設(shè)計(jì)出簡(jiǎn)單的類(lèi),再通過(guò)一個(gè)類(lèi)族來(lái)實(shí)現(xiàn)它。 </P>
3 g/ n v+ V4 h$ B( {/ m! q<P>還有一個(gè)原則就是要<FONT face=黑體 color=#ff0000>充分利用封裝</FONT>來(lái)增加類(lèi)的可靠性。類(lèi)中的<FONT color=#0000ff>封裝</FONT>可以使類(lèi)不依賴(lài)與具體的環(huán)境,這就使類(lèi)代碼可以重用并運(yùn)用于其他情況。同時(shí),數(shù)據(jù)封裝也嚴(yán)格限制了對(duì)類(lèi)中數(shù)據(jù)成員的訪問(wèn),這可以保證程序的運(yùn)行更加可靠。 </P>
6 V6 [! h4 w& I% i d: {: k) m<P>其他就是通過(guò)建立<FONT color=#0000ff>類(lèi)族</FONT>來(lái)使多態(tài)性有用武之地;設(shè)計(jì)方案要經(jīng)過(guò)實(shí)際測(cè)試才可定型。 </P>
1 ]1 @7 h5 g; r: A3 Q5 x( Z<P>面向?qū)ο蟮脑O(shè)計(jì)方法有:<FONT color=#0000ff>自頂向下</FONT>的設(shè)計(jì)方法、<FONT color=#0000ff>自底向上</FONT>的設(shè)計(jì)方法以及<FONT color=#0000ff>一般的面向?qū)ο蟮脑O(shè)計(jì)方法</FONT>,這是綜合了上述兩種方法,使建立的類(lèi)樹(shù)具有合理的層次結(jié)構(gòu),從而使應(yīng)付錯(cuò)誤的能力大增強(qiáng)。</P>
# l) Q4 i, X C3 b1 d, Z( I: N<P><FONT color=#666666>(看看教材,感覺(jué)好象是東方快車(chē)翻譯出來(lái)的漢化文章,越到后面越是。我覺(jué)得自己成了漢語(yǔ)的受害者。:p)</FONT></P>$ Z+ N; }/ J' e# V# D
<P><FONT color=#0000ff>類(lèi)群</FONT>就是由一些彼此<FONT color=#0000ff>互不相關(guān)</FONT>的類(lèi)和類(lèi)族組成的一組類(lèi)。</P>
: W w. d3 J4 W( L( I<P><FONT color=#0000ff>類(lèi)樹(shù)</FONT>就是一組類(lèi)中所有的類(lèi)不管它們之間的差別有多大,他們都有一個(gè)<FONT color=#0000ff>共同的相關(guān)類(lèi)</FONT>(基類(lèi)),這種類(lèi)的結(jié)構(gòu)就稱(chēng)為類(lèi)樹(shù)。</P> |