四、面向?qū)ο蟮囊?/STRONG>
(1)抽象。
抽象是指強(qiáng)調(diào)實(shí)體的本質(zhì)、內(nèi)在的屬性。在系統(tǒng)開發(fā)中,抽象指的是在決定如何實(shí)現(xiàn)對(duì)象之前的對(duì)象的意義和行為。使用抽象可以盡可能避免過早考慮一些細(xì)節(jié)。
類實(shí)現(xiàn)了對(duì)象的數(shù)據(jù)(即狀態(tài))和行為的抽象。
(2)封裝性(信息隱藏)。
封裝性是保證軟件部件具有優(yōu)良的模塊性的基礎(chǔ)。
面向?qū)ο蟮念愂欠庋b良好的模塊,類定義將其說明(用戶可見的外部接口)與實(shí)現(xiàn)(用戶不可見的內(nèi)部實(shí)現(xiàn))顯式地分開,其內(nèi)部實(shí)現(xiàn)按其具體定義的作用域提供保護(hù)。
對(duì)象是封裝的最基本單位。封裝防止了程序相互依賴性而帶來的變動(dòng)影響。面向?qū)ο蟮姆庋b比傳統(tǒng)語言的封裝更為清晰、更為有力。
(3)共享性
面向?qū)ο蠹夹g(shù)在不同級(jí)別上促進(jìn)了共享
同一類中的共享。同一類中的對(duì)象有著相同數(shù)據(jù)結(jié)構(gòu)。這些對(duì)象之間是結(jié)構(gòu)、行為特征的共享關(guān)系。
在同一應(yīng)用中共享。在同一應(yīng)用的類層次結(jié)構(gòu)中,存在繼承關(guān)系的各相似子類中,存在數(shù)據(jù)結(jié)構(gòu)和行為的繼承,使各相似子類共享共同的結(jié)構(gòu)和行為。使用繼承來實(shí)現(xiàn)代碼的共享,這也是面向?qū)ο蟮闹饕獌?yōu)點(diǎn)之一。
在不同應(yīng)用中共享。面向?qū)ο蟛粌H允許在同一應(yīng)用中共享信息,而且為未來目標(biāo)的可重用設(shè)計(jì)準(zhǔn)備了條件。通過類庫這種機(jī)制和結(jié)構(gòu)來實(shí)現(xiàn)不同應(yīng)用中的信息共享。
4.強(qiáng)調(diào)對(duì)象結(jié)構(gòu)而不是程序結(jié)構(gòu)
四、面向?qū)ο蟮拈_發(fā)方法
目前,面向?qū)ο箝_發(fā)方法的研究已日趨成熟,國際上已有不少面向?qū)ο螽a(chǎn)品出現(xiàn)。面向?qū)ο箝_發(fā)方法有Coad方法、Booch方法和OMT方法等。
1.Booch方法
Booch最先描述了面向?qū)ο蟮能浖_發(fā)方法的基礎(chǔ)問題,指出面向?qū)ο箝_發(fā)是一種根本不同于傳統(tǒng)的功能分解的設(shè)計(jì)方法。面向?qū)ο蟮能浖纸飧咏藢?duì)客觀事務(wù)的理解,而功能分解只通過問題空間的轉(zhuǎn)換來獲得。
2.Coad方法
Coad方法是1989年Coad和Yourdon提出的面向?qū)ο箝_發(fā)方法。該方法的主要優(yōu)點(diǎn)是通過多年來大系統(tǒng)開發(fā)的經(jīng)驗(yàn)與面向?qū)ο蟾拍畹挠袡C(jī)結(jié)合,在對(duì)象、結(jié)構(gòu)、屬性和操作的認(rèn)定方面,提出了一套系統(tǒng)的原則。該方法完成了從需求角度進(jìn)一步進(jìn)行類和類層次結(jié)構(gòu)的認(rèn)定。盡管Coad方法沒有引入類和類層次結(jié)構(gòu)的術(shù)語,但事實(shí)上已經(jīng)在分類結(jié)構(gòu)、屬性、操作、消息關(guān)聯(lián)等概念中體現(xiàn)了類和類層次結(jié)構(gòu)的特征。
3.OMT方法
OMT方法是1991年由James Rumbaugh等5人提出來的,其經(jīng)典著作為“面向?qū)ο蟮慕Ec設(shè)計(jì)”。
該方法是一種新興的面向?qū)ο蟮拈_發(fā)方法,開發(fā)工作的基礎(chǔ)是對(duì)真實(shí)世界的對(duì)象建模,然后圍繞這些對(duì)象使用分析模型來進(jìn)行獨(dú)立于語言的設(shè)計(jì),面向?qū)ο蟮慕:驮O(shè)計(jì)促進(jìn)了對(duì)需求的理解,有利于開發(fā)得更清晰、更容易維護(hù)的軟件系統(tǒng)。該方法為大多數(shù)應(yīng)用領(lǐng)域的軟件開發(fā)提供了一種實(shí)際的、高效的保證,努力尋求一種問題求解的實(shí)際方法。
4.UML(Unified Modeling Language)語言
軟件工程領(lǐng)域在1995年~1997年取得了前所未有的進(jìn)展,其成果超過軟件工程領(lǐng)域過去15年的成就總和,其中最重要的成果之一就是統(tǒng)一建模語言(UML)的出現(xiàn)。UML將是面向?qū)ο蠹夹g(shù)領(lǐng)域內(nèi)占主導(dǎo)地位的標(biāo)準(zhǔn)建模語言。
UML不僅統(tǒng)一了Booch方法、OMT方法、OOSE方法的表示方法,而且對(duì)其作了進(jìn)一步的發(fā)展,最終統(tǒng)一為大眾接受的標(biāo)準(zhǔn)建模語言。UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語言。它融入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計(jì),還支持從需求分析開始的軟件開發(fā)全過程。
相關(guān)推薦:北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |