17. Как передать данные с одного экрана на другой?Теория
Дополнительные вопросы
1. Почему для этого плохо подходит общее изменяемое состояние?
1. Почему для этого плохо подходит общее изменяемое состояние?
Вперёд данные передают в инициализатор следующего экрана или в его свойство до push. Назад результат возвращают делегатом или замыканием, которое следующий экран вызывает перед закрытием.
Общий синглтон для этой передачи не нужен: по инициализатору видно, что экран получает.
1. Общее изменяемое состояние прячет, кто записал данные и в каком порядке. Экраны начинают зависеть друг от друга молча. Тест не может собрать один экран, не подняв это общее хранилище, а два места легко перетрут одно поле.