Чем Combine subscription retain cycle отличается от weak self in sink и когда что выбрать?
Что хотят услышать интервьюеры:
Сравнение: Combine subscription retain cycle нужно оценивать в контексте задачи, а не как универсально лучший вариант. В сравнении с weak self in sink смотрите на ownership, lifecycle, читаемость, поддержку разных iOS версий, тестируемость и риск ошибок.
Ответ:
Нюанс: sink легко удерживает self через closure.
Как отвечать: назвать критерии выбора, привести реальный пример и честно обозначить ограничения.
publisher.sink { [weak self] value in self?.handle(value) }.store(in: &bag)