《軟體設計精要與模式》讀書筆記(二) 物件法則

2021-09-02 14:52:23 字數 636 閱讀 3039

物件法則

1.物件導向思想:一切皆物件(包括描述資訊的屬性和描述資訊的行為)

2.物件導向核心要素:封裝(合理的隱藏與公開。合理的封裝符合單一職責原則,保障了物件的高內聚)、繼承(重用和抽象的基礎,耦合關係,優先使用合成/聚合復用原則)、多型(指物件在不同時刻體現為不同型別的能力。多型有機地將封裝繼承和抽象結合起來,首先它利用封裝的原理定義了物件型別;然後通過繼承保證不同型別之間的關係;抽象則提供了多型的能力)

3.物件導向設計原則

單一職責原則:就乙個類而言,應該只專注於做一件事和僅有乙個引起變化的原因。保證了物件的高內聚和細粒度。

開放封閉原則:要求軟體實體(類、模組、以及功能等)對擴充套件是開放的,對修改是封閉的。

liskov替換原則:子型別完全能夠替換父型別而不會讓呼叫父型別的客戶程式有任何變化

依賴倒置原則:高層模組不應該依賴於低層模組,二者應該依賴於抽象;抽象不應該依賴於細節,細節應該依賴於抽象

介面隔離原則:使用多個專門的介面比使用單一的總介面要好。

《軟體設計精要與模式》讀書筆記 三

第三章 體驗重構 個人強烈推薦 重構 改善既有 的設計 不過建議有2年以上的開發人員看,太早看是浪費時間 本章,作者用來乙個階乘容器的設計來說明重構。3.1 乙個階乘容器 通常,作為乙個初學者,我們的 最初會設計如下 code class factorialcontainer public fact...

《軟體設計精要與模式》讀書筆記(一) 設計之道

架構設計需要關注內容 1.程式組織 program organization 劃分功能模組,正確描述模組間關係,利用高內聚低耦合設計思想與原則對功能模組以元件或者包的形式進行封裝。根據面向介面設計原理將元件和包進行抽象,公開暴露服務介面。利用分層架構模式,通過引入分層模式,分離不同的功能模組,根據層...

《軟體設計精要與模式》

給我乙個支點,我就能撬起地球 關鍵不在於力量有多大,而在於如何合理地利用力量。軟體設計同樣如此。思想的確立,技巧的把握,將在很大程度上決定軟 件架構的合理性。基於這樣的目的,本書圍繞著軟體設計的核心內容,結合大量的例項與 充分地展示了軟體設計之美,以及設計 力量 的巧妙運用。內容涵 蓋了設計模式 重...