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