今天突然想到這個問題,覺得應該寫點東西!
我認為應該是下面這些吧:
物件與類:用物件類作為系統的基本構成單位,符合可復用構件應具備的主要特性:
完整性——類的屬性與服務完整地表達了事物的靜態特徵和動態特徵。
獨立性——類與外部的事物之間有明確的界限和較少的介面。
可標識性——類的命名與問題域中的事物概念吻合。
一般性——物件類是對實際事物的對映,客觀性強。當其它系統中遇到同類事物時,用同樣的物件類進行描述的可能性很大。
抽象:抽象意味著忽略事物的某些差異而提取其共同特徵。oo方法的這一原則也正是定義可復用構件時所需遵循的。乙個軟體構件只有體現某種程度的抽象才能被用於細節互異的多個系統。
封裝:把物件的屬性與服務結合為乙個完整的實體,遮蔽了物件的內部細節,對外之保留有限的介面。因此,它使物件類具有完整性、獨立性等有益於復用的性質。
繼承與一般-特殊結構:體現了不同層次的抽象。結構中的類適應於不同的復用範圍。低層的類含有較多的資訊;高層的類可在更廣的範圍內復用。根據這一原理,在系統開發中可以製造一些對其它系統可復用的一般類構件。繼承也是構件的一種有效使用方式:可以把構件作為一般類使用,通過對它的繼承而定義系統中的特殊類。
聚合與整體-部分結構:運用聚合原則,可以把乙個難於復用的大的軟體成分處理為由若干部分物件構成的整體物件,使其中的某些部分物件成為可復用性強的構件。聚合也是實現復用的一種有效方式,例如ole就是把可復用的構件物件通過鏈結或嵌入而聚合為新的物件和新的應用。
粒度控制:運用的比物件和類粒度更大的概念(例如「主題」、「子系統」、「類簇」或其它類似概念),可把若干類組合為乙個較大的軟體成分。因此,用oo方法得到的可復用構件,不侷限於物件類一種形式,也可以是由若干類組成的較大的構件。
軟體工程 物件導向方法學
question 組合語言編寫程式,高階語言的結構化程式設計和物件導向程式設計之間的比較 根本目標 實現工業化,自動化,批量生成 組合語言,接近機器語言 面對物件 物件 類 繼承 計算機處理實體物件 面對物件方法 這裡的物件是指,資料以及可以加工這些資料之上的操作所構成的統一體。結構化的方法 通過物...
物件導向軟體開發方法概述
總的來說,軟體開發都會經歷一下生命週期 為了提高軟體的開發效率,降低軟體的開發成本,乙個良好的軟體系統應具備以下特點 如何才能使軟體系統具備以上特點呢?加入吧整個軟體系統分解成多個小的子系統,每個子系統之間相對獨立把這些子系統像最積木一樣靈活的組裝起來構成整個大的軟體系統。這樣設計出來的軟體肯定能獲...
《設計模式 可復用物件導向軟體的基礎》讀後感
第一章 引言 1.1 什麼是設計模式 書中引用 alexander 的話說,每乙個模式描述了乙個在我們周圍不斷重 生的問題,以及改問題的解決方案的核心。這樣,你就可以一次又一次的使用該方案而不必做重複的勞動。我的理解是,設計模式是一種對一類問題的解決方案的抽象。我們需要對萬千世界的萬千問題進行歸類,...