OOD(OO方法中一個中間過渡環節)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

面向對象設計(Object-Oriented Design,OOD)方法是OO方法中一個中間過渡環節。其主要作用是對OOA分析的結果作進一步的規範化整理,以便能夠被OOP直接接受

基本介紹

  • 中文名面向對象設計
  • 外文名:Object-Oriented Design
  • 簡稱:OOD
  • 簡述:是OO方法中一個中間過渡環節
簡介,背景知識,特點,

簡介

OOD的目標是管理程式內部各部分的相互依賴。為了達到這個目標,OOD要求將程式分成塊,每個塊的規模應該小到可以管理的程度,然後分別將各個塊隱藏在接口(interface)的後面,讓它們只通過接口相互交流。比如說,如果用OOD的方法來設計一個伺服器-客戶端client-server)套用,那么伺服器和客戶端之間不應該有直接的依賴,而是應該讓伺服器的接口和客戶端的接口相互依賴。
這種依賴關係的轉換使得系統的各部分具有了可復用性。還是拿上面那個例子來說,客戶端就不必依賴於特定的伺服器,所以就可以復用到其他的環境下。如果要復用某一個程式塊,只要實現必須的接口就行了。
OOD是一種解決軟體問題的設計範式(paradigm),一種抽象的範式。使用OOD這種設計範式,我們可以用對象(object)來表現問題領域(problem domain)的實體,每個對象都有相應的狀態和行為。我們剛才說到:OOD是一種抽象的範式。抽象可以分成很多層次,從非常概括的到非常特殊的都有,而對象可能處於任何一個抽象層次上。另外,彼此不同但又互有關聯的對象可以共同構成抽象:只要這些對象之間有相似性,就可以把它們當成同一類的對象來處理。

背景知識

計算機硬體技術卻在飛速發展。從幾十年前神秘的龐然大物。當軟體開發者們還在尋找能讓軟體開發生產力提高一個數量級的“銀彈”時,硬體開發的生產力早已提升了百倍千倍。
硬體工程師們能夠如此高效,是因為他們都很懶惰。他們永遠恪守“不要去重新發明輪子”的古訓。Grady Booch把這些黑箱稱為類屬(class category)。
類屬是由被稱為類(class)的實體組成的,類與類之間通過關聯(relationship)結合在一起。一個類可以把大量的細節隱藏起來,只露出一個簡單的接口,這正好符合人們喜歡抽象的心理。所以,這是一個非常偉大的概念,因為它給我們提供了封裝和復用的基礎,讓我們可以從問題的角度來看問題,而不是從機器的角度來看問題。
軟體的復用最初是從函式館和類庫開始的,這兩種復用形式實際上都是白箱復用。到90年代,開始有人開發並出售真正的黑箱軟體模組:框架framework)和控制項control)。框架和控制項往往還受平台和語言的限制,實現更高程度的復用。但是想一想,其實Web Service也是面向對象,只不過是把類與類之間的關聯用XML來描述而已。
在過去的十多年裡,面向對象技術對軟體行業起到了極大的推動作用。在可以預測的將來,它仍將是軟體設計的主要技術。

特點

OO方法以對象為基礎,利用特定的軟體工具直接完成從對象客體的描述到軟體結構之間的轉換。這是OO方法最主要的特點和成就。OO方法的套用解決了傳統結構化開發方法中客觀世界描述工具與軟體結構的不一致性問題,縮短了開發周期,解決了從分析和設計到軟體模組結構之間多次轉換映射的繁雜過程,是一種很有發展前途的系統開發方法。

相關詞條

熱門詞條

聯絡我們