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

iOS / SwiftMiddleArchitectureОшибка кандидатаios|swift|architecture|analytics|analytics abstraction

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

Частая ошибка: делать Massive ViewController/ViewModel, смешивать UI, network, navigation и business logic или создавать слои без реальных границ.

Ответ:

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

Нюанс: не стоит разбрасывать SDK вызовы по UI.

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

protocol AnalyticsTracking { func track(_ event: Event) }

Источники

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