Встречается на собеседованиях • сегодня
Приведи пример выгодного использования интерфейса
Использование интерфейсов в Python позволяет создавать гибкие и расширяемые системы. Например, при разработке плагинов:
python
from abc import ABC, abstractmethod
class DataProcessor(ABC):
@abstractmethod
def process(self, data):
pass
class CSVProcessor(DataProcessor):
def process(self, data):
print(f"Processing CSV: {data}")
class JSONProcessor(DataProcessor):
def process(self, data):
print(f"Processing JSON: {data}")
def run_processor(processor: DataProcessor, data):
processor.process(data)
Клиентский код
processors = [CSVProcessor(), JSONProcessor()]
for p in processors:
run_processor(p, "sample_data")
text
Преимущества:
1. Единый контракт для всех реализаций
2. Легко добавлять новые обработчики
3. Клиентский код зависит от абстракции, а не от конкретных классов
4. Упрощает тестирование (можно использовать mock-объекты)
Этот подход особенно полезен в больших проектах и при работе с командой.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы