Встречается на 1% собеседований по Python
В чем разница между фасадом и адаптером
Фасад и адаптер — оба являются структурными паттернами, но решают разные задачи:
Фасад упрощает работу со сложной системой, предоставляя удобный интерфейс. Он не изменяет существующие интерфейсы, а лишь объединяет их вызовы.
python
class CPU:
def execute(self): pass
class Memory:
def load(self): pass
class ComputerFacade:
def init(self):
self.cpu = CPU()
self.memory = Memory()
text
def start(self):
self.memory.load()
self.cpu.execute()text
**Адаптер** же преобразует один интерфейс в другой, чтобы позволить работать несовместимым классам вместе:
```python
class EuropeanSocket:
def voltage(self): return 230
class USPlug:
def power(self): return 120
class Adapter(USPlug):
def __init__(self, socket):
self.socket = socket
def power(self):
return self.socket.voltage() / 2Ключевое отличие: фасад упрощает, адаптер — преобразует. Фасад работает с целой подсистемой, адаптер — с конкретным интерфейсом.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы