物件導向的開發正規化

2022-09-12 04:06:09 字數 903 閱讀 1949

物件導向的最大好處就是封裝,讓我們回顧一下這些設計模式都封裝了哪些方面。

建立型模式封裝了例項化的過程,客戶物件不再關心這些建立的細節:

應該使用哪個具體類,如何初始化和組裝例項。

建立型模式   這樣,也為例項化提供了很大的靈活性:

可以使用轉殖的方式加快其建立過程和簡化建立細節,也可以根據配置確定

例項化的具體型別,還可以根據需要建立單例物件。

封裝了那些不變的演算法步驟,把變化那些分交給子類

模板方法模式    去封裝,對使用者隱藏了具體的子型別。

裝飾器模式隱藏了被裝飾物件;

並且,由於裝飾物件和被裝飾的物件具有相同的介面,

裝飾器模式     客戶物件在使用被裝飾過的物件和未裝飾過的物件時,

不需要對它們區別對待,隱藏了裝飾器型別。

和裝飾器模式一樣,隱藏了被**物件(目標物件),

**模式    也實現了**型別的隱藏。

隱藏了被適配的介面/類,客戶物件並不知道請求會

介面卡模式   **給被適配的物件。

外觀模式    隱藏了子系統,封裝了外觀和子系統之間的複雜互動。

實現了葉子類和分支子類的隱藏,客戶物件操作葉子物件

組合模式    和分支物件時不需要區別對待。

策略模式    每乙個具體策略都封裝了乙個具體的實現演算法。

狀態模式    每乙個狀態都封裝了與乙個特定狀態相關的行為,

context隱藏了狀態介面和實現,

客戶物件不知道它們的存在。

不同的觀察者對變化的處理是不同的,

把這些變化封裝在不同型別的觀察者型別裡,

觀察者模式   由於它們有相同的介面,觀察者就能獨立於主題而變化。

另外如果為主題也抽象了介面,

這樣觀察者和主題兩方面就能獨立變化與重用,而不會影響對方。

JS物件導向使用物件導向進行開發

對 js 中的物件導向的基礎進行講述,初體驗使用物件導向進行開發 物件導向的概念及特性 用物件導向的方式解決簡單的標籤建立例項 物件導向就是使用物件 物件導向開發就是使用物件開發 面向過程就是以過程的方式開發 物件導向是面向過程的封裝 抽象性如果需要用一物件來描述乙個資料,那就需要抽取這個物件的核心...

python物件導向開發

物件導向封裝案例 1.目標 士兵突擊身份運算 身份運算子 描述區別 is比較物件記憶體位址是否相等 判斷物件值是否相等 is not 2,封裝 封裝是物件導向開發的重要特點 物件導向開發的第一步,將 屬性 和方法 封裝到乙個抽象的 類 中 外界使用類建立物件,通過物件呼叫方法 乙個物件的屬性可以是另...

python物件導向開發

python物件導向開發 和其它程式語言相比,python 在盡可能不增加新的語法和語義的情況下加入了類機制。python中的類提供了物件導向程式設計的所有基本功能 類的繼承機制允許多個基類,派生類可以覆蓋基類中的任何方法,方法中可以呼叫基類中的同名方法。物件可以包含任意數量和型別的資料。注意事項 ...