Встречается на собеседованиях • сегодня
Какие знаешь паттерны проектирования
В Data Science часто используются следующие паттерны:
- Фабрика (Factory) - создание объектов без указания точного класса. Например, создание разных моделей ML:
python
class ModelFactory:
def get_model(self, model_type):
if model_type == "random_forest":
return RandomForestClassifier()
elif model_type == "svm":
return SVC()- Стратегия (Strategy) - инкапсуляция алгоритмов для взаимозаменяемости:
python
class PreprocessingStrategy:
def process(self, data):
pass
class Normalization(PreprocessingStrategy):
def process(self, data):
return (data - data.mean()) / data.std()- Наблюдатель (Observer) - для мониторинга обучения моделей:
python
class TrainingObserver:
def update(self, epoch, loss):
print(f"Epoch {epoch}, Loss: {loss}")- Декоратор - добавление функциональности (логирование, тайминг):
python
def log_time(func):
def wrapper(*args, **kwargs):
start = time.time()
result = func(*args, **kwargs)
print(f"Time: {time.time() - start}s")
return result
return wrapperТакже полезны: Адаптер (для интеграции разных библиотек), Фасад (упрощение сложных API), Одиночка (для глобальных конфигов).

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