Какая типичная ошибка при работе с ARC и как ее избежать?

iOS / SwiftJuniorMemory ManagementОшибка кандидатаios|swift|memory management|arc

Что хотят услышать интервьюеры:

Частая ошибка: создавать retain cycle через замыкание, delegate, Timer, Combine subscription или Task и не проверять deinit.

Ответ:

Как избежать: явно сформулировать ответственность «ARC», не смешивать ее с соседними слоями и проверить сценарии: повторный вызов, ошибка, отмена, освобождение памяти и разные версии iOS.

Нюанс: Automatic Reference Counting освобождает class instances, когда strong references исчезают.

На собеседовании: полезно назвать симптом ошибки: crash, leak, race condition, stale UI, broken navigation, slow scroll или flaky test.

class Service { }

Источники

Похожие вопросы