軟體構造感想7

2021-10-06 20:05:48 字數 1274 閱讀 4767

簡單來說,介面卡模式就是將方法不匹配的介面轉換成匹配的

比如point方法是找到圖上對應座標的點,

我們需要的是

point(int x,int y)

而有個介面提供乙個相同功能的方法是

point(int y,int x)

這時,當我們需要使用委託時就需要在中間加設乙個介面,在其中再將引數調換位置後呼叫介面的point(int y,int x)方法,加設的介面就相當於中轉站

構造乙個裝飾類,實現乙個介面,而該裝飾類的實現由介面中的另乙個類實現,也就是說這個裝飾類相當於這個「另乙個類」的copy,而需要拓展的功能的類繼承這個裝飾類,這就是所謂的裝飾模式,這樣使得幾個類之間有一定的復用性,但是也存在缺點,就是這能使用介面中定義的方法,如果要能夠使用全部方法就要在介面中定義所有方法,也就違反了lsp原則

簡而言之門面模式就是把幾個介面捏合成乙個介面,通過傳進這乙個介面中的方法中引數的不同選擇不同的介面進行實現

簡單說,就拿排序來說,策略模式就是構造乙個排序介面,這個介面由類似於快速排序、氣泡排序、希爾排序等排序方法等方法實現,使用時使用該介面的物件,建立對應具體類的例項

就是把幾個類復用的方法通過乙個父類組合起來,在父類中把能復用的方法實現,可以加上final,讓子類不能繼承,而需要擴充套件的功能由父類的抽象方法定義,子類實現

簡單說就是為adt提供一種遍歷方式

可維護性—「修改軟體系統或元件以更正錯誤,提高效能或其他屬性或適應變化的環境的簡便性」。 

可擴充套件性-軟體設計/實現考慮了未來的增長,並被視為系統擴充套件能力和實施擴充套件所需的工作水平的系統度量。 

靈活性-軟體可以根據使用者要求,外部技術和社會環境等輕鬆更改的能力。

適應性-互動式系統(自適應系統)的能力,可以使其行為適應單個使用者 基於獲取的有關其使用者和環境的資訊。

可管理性-管理軟體系統的效率和便捷性,以保持系統的執行,安全和平穩執行。

可支援性-基於包括質量文件,診斷資訊以及知識淵博的可用技術人員在內的資源,在部署後如何保持軟體的有效執行。

可分解性、可組合性、可理解性、可持續性(發生變化時受影響範圍最小)、出現異常之後的保護

直接對映、盡可能少的介面、盡可能小的介面、顯式介面、資訊隱藏

單一責任原則:乙個類只有乙個責任

開放-封閉原則:模組的行為應是可擴充套件的,但模組自身的**是不應被修改的

liskov替換原則:子型別必須能夠替換其基型別;派生類必須能夠通過其基類的介面使用,客戶端無需了解二者之間的差異)

介面隔離原則:只提供必需的介面

依賴轉置原則: 具體應依賴於抽象,抽象的模組不應依賴於具體的模組)

軟體構造感想1

對軟體來說,雖然它是一系列的二進位制 但軟體來說它有多個質量目標,即可以從多個維度上去看的這個軟體,並且不同的質量目標可能就對應的是不同的維度。軟體不同質量目標,那麼通過適當的方式或模型去描述。雖然我們從不同的維度上去看這個軟體但是我們看的是同一軟體,所以說這些維度之間肯定是有相關性的,即軟體對應的...

學習軟體測試的感想

乙個月前,我來到濟寧惠普實訓基地,在這裡學習軟體測試。在這幾天裡,感覺這裡時間比在其它地方過得要快,早上起來,真奔教室,學著學著就到了晚上 在這裡彷彿一天就可以學到以前乙個月的知識,只是不停地在學 在這裡同學們都好像打了雞血,中午可以不休息,但都精神飽滿,充滿激情。以前我喜歡平靜 慢節奏的生活 現在...

軟體架構系列感想(五)

1 通用的抽象集合。可以將軟體系統簡單的理解成由多個容器構成,容器又由多個元件構成,元件由乙個或多個類實現。類 在乙個物件導向系統裡,類是最小結構單元 元件 元件可以想象成乙個或多個類組成的邏輯群組,通常由多個類在更高層次的約束下組合而成 容器 指乙個在其內部可以執行元件或駐留資料的東西 系統 系統...