Python 设计模式之适配器模式
适配器模式(Adapter Pattern)是一种结构型设计模式,它允许将不兼容的对象包装在一个适配器中,以便它们能够一起工作。适配器模式通常用于将第三方库或旧系统与新系统集成,以使它们能够相互协作。
在适配器模式中,适配器充当一个中间层,它接收来自客户端的请求,并将这些请求转换为目标对象可以理解的格式。这个转换过程对客户端是透明的,客户端只需要与适配器进行交互即可,而不需要了解适配器是如何与目标对象交互的。
下面是一个使用适配器模式的示例,假设我们有一个旧系统中的类,它具有以下接口:
class OldSystem: def request(self, url): # 发送请求并返回结果 pass
我们希望将这个旧系统集成到我们的新系统中,但是新系统使用的是以下接口:
class NewSystem: def send_request(self, host, path): # 发送请求并返回结果 pass
我们可以创建一个适配器来实现这个转换:
class OldSystemAdapter: def __init__(self, old_system): self.old_system = old_system def send_request(self, host, path): url = 'http://' + host + path return self.old_system.request(url)
在这个适配器中,我们将 NewSystem 的 send_request 方法转换为了 OldSystem 的 request 方法,以便旧系统能够理解这个请求。然后我们可以使用适配器将旧系统集成到我们的新系统中:
old_system = OldSystem() adapter = OldSystemAdapter(old_system) result = adapter.send_request('pidancode.com', '/test') print(result)
这样,我们就可以使用适配器模式将不兼容的对象集成到我们的系统中,而不需要修改现有代码。
相关文章