Чем associatedtype в protocol отличается от generics и когда что выбрать?

iOS / SwiftMiddleSwift CoreСравнениеios|swift|swift core|associatedtype|associatedtype в protocol

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

Сравнение: associatedtype в protocol нужно оценивать в контексте задачи, а не как универсально лучший вариант. В сравнении с generics смотрите на ownership, lifecycle, читаемость, поддержку разных iOS версий, тестируемость и риск ошибок.

Ответ:

Нюанс: associatedtype делает протокол generic-like и влияет на existentials.

Как отвечать: назвать критерии выбора, привести реальный пример и честно обозначить ограничения.

protocol Repository { associatedtype Entity }

Источники

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