1
我無法找到任何有關薄與厚適配器之間區別的信息。如果有人能提供描述,我將不勝感激,後面跟一個簡單的例子(請注意,這個例子不需要用C++)。薄與厚適配器(包裝)示例
在此先感謝。
編輯:我的想法是像class adapter pattern這需要最小的變化,以符合預期的接口。
我無法找到任何有關薄與厚適配器之間區別的信息。如果有人能提供描述,我將不勝感激,後面跟一個簡單的例子(請注意,這個例子不需要用C++)。薄與厚適配器(包裝)示例
在此先感謝。
編輯:我的想法是像class adapter pattern這需要最小的變化,以符合預期的接口。
這很簡單。
例如,假設您想在代碼中使用the stat function,但您希望能夠對代碼進行單元測試,甚至可以更改在運行時使用哪個函數。然後,您將添加一個基類:
struct FunctionApiBase
{
virtual ~FunctionApiBase{}
virtual int stat(const char *path, struct stat *buf) = 0;
};
實現:
struct RealFunctionApi : public FunctionApiBase
{
virtual int stat(const char *path, struct stat *buf)
{
::stat(path, buf);
}
};
然後創建類型RealFunctionApi的對象,並調用就可以了統計,而不是真正的功能。
如果我理解你的鏈接中的文字,厚適配器只有更復雜的代碼。
我從來沒有聽說過薄而厚的適配器。你從哪裏弄到的?據我所知,只有適配器模式存在。 – 2011-02-11 08:52:50
嗯,我實際上收到了爲某個班級製作一個的請求。順便說一句,這是我迄今爲止發現的唯一信息:http://it.toolbox.com/blogs/davidlinthicum/thick-and-thin-adapters-4599 – sinek 2011-02-11 08:59:20