2011年軟考系統(tǒng)分析師整理資料:面向對象(4)
四、面向對象的要素
(1)抽象。
抽象是指強調實體的本質、內在的屬性。在系統(tǒng)開發(fā)中,抽象指的是在決定如何實現(xiàn)對象之前的對象的意義和行為。使用抽象可以盡可能避免過早考慮一些細節(jié)。
類實現(xiàn)了對象的數(shù)據(jù)(即狀態(tài))和行為的抽象。
(2)封裝性(信息隱藏)。
封裝性是保證軟件部件具有優(yōu)良的模塊性的基礎。
面向對象的類是封裝良好的模塊,類定義將其說明(用戶可見的外部接口)與實現(xiàn)(用戶不可見的內部實現(xiàn))顯式地分開,其內部實現(xiàn)按其具體定義的作用域提供保護。
對象是封裝的最基本單位。封裝防止了程序相互依賴性而帶來的變動影響。面向對象的封裝比傳統(tǒng)語言的封裝更為清晰、更為有力。
(3)共享性
面向對象技術在不同級別上促進了共享
同一類中的共享。同一類中的對象有著相同數(shù)據(jù)結構。這些對象之間是結構、行為特征的共享關系。
在同一應用****享。在同一應用的類層次結構中,存在繼承關系的各相似子類中,存在數(shù)據(jù)結構和行為的繼承,使各相似子類共享共同的結構和行為。使用繼承來實現(xiàn)代碼的共享,這也是面向對象的主要優(yōu)點之一。
在不同應用****享。面向對象不僅允許在同一應用****享信息,而且為未來目標的可重用設計準備了條件。通過類庫這種機制和結構來實現(xiàn)不同應用中的信息共享。
4.強調對象結構而不是程序結構
四、面向對象的開發(fā)方法
目前,面向對象開發(fā)方法的研究已日趨成熟,國際上已有不少面向對象產(chǎn)品出現(xiàn)。面向對象開發(fā)方法有Coad方法、Booch方法和OMT方法等。
1.Booch方法
Booch***描述了面向對象的軟件開發(fā)方法的基礎問題,指出面向對象開發(fā)是一種根本不同于傳統(tǒng)的功能分解的設計方法。面向對象的軟件分解更接近人對客觀事務的理解,而功能分解只通過問題空間的轉換來獲得。
2.Coad方法
Coad方法是1989年Coad和Yourdon提出的面向對象開發(fā)方法。該方法的主要優(yōu)點是通過多年來大系統(tǒng)開發(fā)的經(jīng)驗與面向對象概念的有機結合,在對象、結構、屬性和操作的認定方面,提出了一套系統(tǒng)的原則。該方法完成了從需求角度進一步進行類和類層次結構的認定。盡管Coad方法沒有引入類和類層次結構的術語,但事實上已經(jīng)在分類結構、屬性、操作、消息關聯(lián)等概念中體現(xiàn)了類和類層次結構的特征。
3.OMT方法
OMT方法是1991年由James Rumbaugh等5人提出來的,其經(jīng)典著作為“面向對象的建模與設計”。
該方法是一種新興的面向對象的開發(fā)方法,開發(fā)工作的基礎是對真實世界的對象建模,然后圍繞這些對象使用分析模型來進行獨立于語言的設計,面向對象的建模和設計促進了對需求的理解,有利于開發(fā)得更清晰、更容易維護的軟件系統(tǒng)。該方法為大多數(shù)應用領域的軟件開發(fā)提供了一種實際的、高效的保證,努力尋求一種問題求解的實際方法。
4.UML(Unified Modeling Language)語言
軟件工程領域在1995年~1997年取得了***的進展,其成果超過軟件工程領域過去15年的成就總和,其中最重要的成果之一就是統(tǒng)一建模語言(UML)的出現(xiàn)。UML將是面向對象技術領域內占主導地位的標準建模語言。
UML不僅統(tǒng)一了Booch方法、OMT方法、OOSE方法的表示方法,而且對其作了進一步的發(fā)展,最終統(tǒng)一為大眾接受的標準建模語言。UML是一種定義良好、易于表達、功能強大且普遍適用的建模語言。它融入了軟件工程領域的新思想、新方法和新技術。它的作用域不限于支持面向對象的分析與設計,還支持從需求分析開始的軟件開發(fā)全過程。
【編輯推薦】