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

iOS / SwiftMiddleSwiftUIОшибка кандидатаios|swift|swiftui|.task|.task modifier

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

Частая ошибка: думать, что View — это объект с lifecycle как UIViewController, хранить side effects в body или неверно выбирать State/StateObject/ObservedObject.

Ответ:

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

Нюанс: связан с lifecycle View и поддерживает cancellation.

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

.task { await viewModel.load() }

Источники

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