Чем closures отличается от functions и когда что выбрать?
Что хотят услышать интервьюеры:
Сравнение: closures нужно оценивать в контексте задачи, а не как универсально лучший вариант. В сравнении с functions смотрите на ownership, lifecycle, читаемость, поддержку разных iOS версий, тестируемость и риск ошибок.
Ответ:
Нюанс: замыкания захватывают контекст и могут создавать retain cycles.
Как отвечать: назвать критерии выбора, привести реальный пример и честно обозначить ограничения.
let doubled = numbers.map { $0 * 2 }