Я хочу использовать Отто для межфрагментной связи. Я хочу сделать это, используя лучшие практики, если я могу помочь. В примере Otto на Github используется синглтон для объекта Bus
, но рекомендуется использовать внедрение зависимостей. Я новичок в обеих этих концепциях, хотя первое кажется легче реализовать. Я изо всех сил пытаюсь понять, как бы я сделал последнее без значительных усилий, несмотря на то, что читал.
Есть инжекторы зависимости от ОС dagger, guice и несколько других, но они кажутся довольно тяжелыми для такого относительного новичка, как я. Мне интересно, действительно ли стоит учиться использовать один из них для, казалось бы, незначительного повышения эффективности/конвенциональности кода. Не говоря уже о том, что они раздуют мой проект.
Стоит ли реализовывать Otto с помощью DI, когда я собираюсь использовать его только для замены нескольких интерфейсов и слушателей здесь и там? Я действительно буду регистрировать Bus
только в нескольких действиях, содержащих фрагменты.
Я не буду проводить модульное тестирование, и я могу жить с двумя или тремя действиями (из десяти), тесно связанными со своими фрагментами. Я не вижу в этом ничего действительно плохого, хотя это и опрометчиво, особенно если позже относительно легко переключиться на внедрение зависимостей.
Наконец, нужны ли мне отдельные экземпляры Bus
для отдельных групп фрагментов активности, где связь будет происходить только внутри указанных групп? Из прочтения мне не ясно, нужно ли мне делать это для лучшей практики/эффективности или безопасности?