Как стать автором
Обновить

Комментарии 4

Как Андроид-разработчик, я иногда поражаюсь, насколько Гугл любит переусложнять и переизобретать вещи.

Переизобретать любит. А переусложнения то в о чем? Обычный как по мне observer.
Ну, например, в том, что передачей-получением результатов у нас по каким-то причинам заведует FragmentManager. По идее, это не должно быть его заботой, это должно быть заботой отдельного класса, который занимается только получением-передачей этих результатов. Диаграмма с тем, какой FragmentManager нужно использовать, чтобы правильно получить результаты — это весело, конечно. Захотел использовать Fragment внутри другого Fragment'а в одном месте, а в другом внутри Activity? Пиши if-else на выбор FragmentManager'а.
Короче говоря, обычный observer становится совсем необычным.

Плюс нет никакого типирования результата. Хочешь узнать, что тебе пришло из другого фрагмента? Полезай, дружок, в код этого фрагмента и узнай. А если уж вдруг кто-то ошибся и переиспользовал ключ с другим типом данных, то лови ClassCastException.

Понятно, конечно, что все это сделано максимально адски в связи с жизненным циклом Fragment/Activity и возможностью убийства процесса, а, значит, нужно сохранять состояние и его восстанавливать, но выглядит это чересчур неуклюже и громоздко.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории