Занимаюсь разработкой под android меньше года. В связи с углублением в предметную область возникли следующие вопросы, связанные с организацией приложения.
Допустим, есть Activity и n-ое количество fragmentов, которые существуют внутри Activity.
По логике приложения каждый фрагмент должен отправлять запросы серверу , получать ответ и обновлять содержимое.(допустим, с помощью RestManegerа).
С одной стороны, логично создать для каждого фрагмента свой экземпляр класса RestManager,
С другой стороны, для того, чтобы избежать дублирования кода, хочется сделать getter для этого SpiceManagera в Activity, и использовать его во фрагментах,
Вопрос в следующем, насколько плох второй подход с точки зрения утечек памяти.
Как правильно делать? и какие существуют best practicies по этой теме.
Прошу строго не судить, если что то в вопросе покажется глупым.
Rest запросы -понятно. Я имела ввиду более общий случай, когда доступ к объекту какого-либо класса требуется в каждом фрагменте.
Тогда попробую задать более конкретный вопрос: при использовании RoboSpice как организовать работу с SpiceManegerом? В туториалах каждый раз создается SpiceManager для Activity или Fragmenta, соответственно идет управление им в методах жц фрагмента или активити. Т.е. в каждом экземпляре Фрагмента будет код, создающий SpiceManager, запускающий и останавливающий его. корректно ли это?
А какой оптимальный подход при большом количестве активити и фрагментов в приложении??
Вам нужно ознакомиться с паттернами. Доступ к одному объекту из нескольких классов реализуется паттерном Singleton. cpp-reference.ru/patterns
RoboSpice не использую, туториалы это всего лишь примеры, SpiceManager скорее всего нужно в Сервисе использовать. "каждом экземпляре Фрагмента будет код, создающий SpiceManager, запускающий и останавливающий его" не уверен, все зависит от задач. " оптимальный подход" подход для чего ?