Встречается на собеседованиях • сегодня
В чем разница между императивным и функциональным программированием
Императивное программирование описывает как выполнять задачу через последовательность команд (изменя состояние). Функциональное — что нужно сделать через композицию функций (без изменяемого состояния).
Ключевые различия:
- Состояние: императивное изменяет его, функциональное избегает.
- Контроль потока: циклы vs рекурсия/функции высшего порядка.
- Данные: мутабельные vs иммутабельные.
Пример на Python:
python
# Императивный стиль (изменяемое состояние)
numbers = [1, 2, 3]
squares = []
for num in numbers:
squares.append(num ** 2)
# Функциональный стиль (без состояния)
numbers = (1, 2, 3) # кортеж (иммутабельный)
squares = tuple(map(lambda x: x ** 2, numbers))Функциональный подход чаще использует map, filter, reduce, избегает побочных эффектов. Python поддерживает оба подхода, но не является чисто функциональным языком.

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