軟體設計模式與體系結構

2021-10-03 18:24:25 字數 1306 閱讀 6349

(1)畫出新設計的設計類圖

(2)說明為什麼新設計遵循開閉原則

開閉原則(ocp)是物件導向設計中「可復用設計」的基石,是物件導向設計中最重要的原則之一。開閉原則中「開」,是指對於元件功能的擴充套件是開放的,是允許對其進行功能擴充套件的。本題中將findkeywords提出為乙個介面,五個方法實現此介面,可拓展性高。

開閉原則中「閉」,是指對於原有**的修改是封閉的,即不應該修改原有的**。設計的類圖中封裝性好,keywords屬性、操作不易被修改。

(1)說明為什麼要使用策略模式

策略模式提供了對「開閉原則」的完美支援,使用者可以在不修改原有系統的基礎上選擇演算法或行為,也可以靈活地增加新的演算法或行為。

策略模式提供了管理相關的演算法族的辦法。策略類的等級結構定義了乙個演算法或行為族。恰當使用繼承可以把公共的**移到父類裡面,從而避免**重複。

使用策略模式可以避免使用多重條件(if-else)語句。多重條件語句不易維護,它把採取哪一種演算法或採取哪一種行為的邏輯與演算法或行為的邏輯混合在一起,統統列在乙個多重條件語句裡面,比使用繼承的辦法還要原始和落後。

(2)畫出該模式的設計類圖

(3)解釋為什麼自己的設計符合開閉原則

開閉原則(ocp)是物件導向設計中「可復用設計」的基石,是物件導向設計中最重要的原則之一。開閉原則中「開」,是指對於元件功能的擴充套件是開放的,是允許對其進行功能擴充套件的。本題中將type提出為乙個介面,三個方法實現此介面,可拓展性高。另外,將computefare提出為乙個介面。

開閉原則中「閉」,是指對於原有**的修改是封閉的,即不應該修改原有的**。設計的類圖中封裝性好,phonefarecomputation屬性不易被修改。

軟體體系結構與設計模式

軟體體系結構是系統的乙個或多個結構,它包括 軟體的組成元素 元件 這些 元件 元素的外部可見特性 這些元素 元件 之間的相互關係。軟體體系結構不僅指定了系統的組織結構和拓撲結構,也顯示了系統需求和構成系統的元素之間的對應關係,提供了一些設計決策的基本原理。部件包括客戶端 伺服器 資料庫 程式包 過程...

軟體設計模式與體系結構 課後練習1

畫出該模式的設計類圖 如圖1所示 圖1 設計類圖 2.解釋為什麼自己的設計符合開閉原則?答 因為設計的類 模組和函式對擴充套件開放,對修改關閉 即可以通過擴充套件來實現變化 而不是通過修改已有的 來實現變化 具體為通過介面或抽象類約束擴充套件 對擴充套件進行邊界限定 並且不會出現在介面或抽象類中不存...

軟體設計與體系結構 測試題五

主要參與者是什麼?答案 開始用例的參與者 擴充套件用例能用來做什麼?答案 描述只在某些條件下執行的不同用例的條件部分 用例中的參與者是什麼?答案 與系統互動的外部實體 什麼是用例包?答案 相關用例的組 非功能性需求在用例模型中如何描述?答案 在用例描述的乙個分開的小節中 活 在用例建模中能用來做什麼...