C++ Adaptor 設計模式
C++ Adaptor 設計模式
我在《QtDBus編程詳解(二)》中講到過。處於安全和接口方麵的考慮,普通Qt對象Object無法和Linux的DBus通信,為了使Object能和Linux的DBus通信,需要使用一個適配器Adaptor,其實這就是Adaptor 設計模式最常用的方法。
Adaptor 設計模式使用場景:Class A 需要跟 Class B 交互,但是 Class A 和 Class B是毫無任何關係的兩個類,不能直接交互,為了達到代碼和第三方接口的重用的目的,我們需要一個Adaptor來作為一個紐帶,使得Class A能和Class B交互。
Adaptor設計模式分類:
類模式:
類繼承模式的核心部分是Adaptor適配器類private 繼承 Adaptee,這種繼承方式叫做實現繼承。所謂實現繼承是指繼承了父類的實現,而且無法向外部提供該實現,隻能在子類內部使用,因為繼承方式是private。相對應的另一種public繼承方式叫做接口繼承。所謂接口繼承指的是子類繼承了父類的接口,而且可以對外提供該接口。類繼承使得Target和Adaptee有了關聯。
對象模式:
對象模式是通過采用組合方式,在Adaptor類不引用Adaptee對象,也能達到效果。
最後更新:2017-04-02 06:51:36