适配器模式学习笔记
概述
适配器模式是一种结构型设计模式,它允许将不兼容的对象包装在适配器中,以便它们可以与其他对象协同工作。适配器充当两个不兼容接口之间的桥梁。
实例
一个实际的例子是:假设你有一个旧的打印机,它只能通过并行端口连接到计算机。但是你的现代电脑只有USB接口。为了连接打印机,你需要使用一个适配器,该适配器允许并行端口与USB接口进行通信。
pythonCopy Codeclass ParallelPortPrinter:
def __init__(self, text):
self._text = text
def print_text(self):
# print text using parallel port
print(f"Printing via Parallel Port: {self._text}")
class PrinterAdapter:
def __init__(self, text):
self._printer = ParallelPortPrinter(text)
def print_text(self):
self._printer.print_text()
# 使用适配器连接并打印
adapter = PrinterAdapter("Hello World!")
adapter.print_text()
在上面的示例中,ParallelPortPrinter
类表示旧的打印机,PrinterAdapter
类充当适配器。适配器将 ParallelPortPrinter
包装在内部,并将新的方法 print_text()
公开给客户端,以便它们可以与旧的打印机协同工作。
总结
适配器模式提供了一种有效的方式来使不兼容的对象可以协同工作。通过将对象包装在适配器中,我们可以隐藏其实现细节,并重新公开一个更可用的接口。适配器可以很好地应用在许多领域,例如将旧系统与新系统连接起来。