Size: a a a

Android Architecture

2020 August 20

AA

Aleksey Antonov in Android Architecture
всем привет! такой кейс интересный, хотелось бы узнать у людей с опытом. проект новый пилю, завез dagger2, moxy2,cicerone, решил делать MVP. есть фрагмент, у этого фрагмента есть список довольно таки большой, нужно передать его в новый фрагмент, что то поколдовать и вернуться потом обратно в первый фрагмент и получить результат колдовства. если я создам класс синглтон и заинжекчу через даггер  со скоупом жизни пока жив первый экран. типо первый фрагмент сует туда список, на втором фрагменте этот список получу, изменю, по возврату в первом фрагменте во onViewAttach дерну измененный список... такое практикуется вообще? чет сделал понравилось) а потом задумался может в чем то может быть подвох и потом придется переписывать? короче говоря будут ли в меня кидаться тряпками за такую реализацию в мидловом обществе?)
источник

S

Sergey Mitrofanov in Android Architecture
Сама идея передачи списка между фрагментами для его модификации выглядит странно. Что мешает "отколдовать" в том же фрагменте?
источник

EP

Eugene P. in Android Architecture
Aleksey Antonov
всем привет! такой кейс интересный, хотелось бы узнать у людей с опытом. проект новый пилю, завез dagger2, moxy2,cicerone, решил делать MVP. есть фрагмент, у этого фрагмента есть список довольно таки большой, нужно передать его в новый фрагмент, что то поколдовать и вернуться потом обратно в первый фрагмент и получить результат колдовства. если я создам класс синглтон и заинжекчу через даггер  со скоупом жизни пока жив первый экран. типо первый фрагмент сует туда список, на втором фрагменте этот список получу, изменю, по возврату в первом фрагменте во onViewAttach дерну измененный список... такое практикуется вообще? чет сделал понравилось) а потом задумался может в чем то может быть подвох и потом придется переписывать? короче говоря будут ли в меня кидаться тряпками за такую реализацию в мидловом обществе?)
источник

AA

Aleksey Antonov in Android Architecture
но если тебе надо запихать туда 20 разных параметров, это либо серилизацию делать, либо пихать все под разными ключами, это же так скучно)))
источник

S

Sergey Mitrofanov in Android Architecture
Я бы не стал. Бандл/Парселлабл не подходит для большого количества данных
источник

EP

Eugene P. in Android Architecture
Aleksey Antonov
но если тебе надо запихать туда 20 разных параметров, это либо серилизацию делать, либо пихать все под разными ключами, это же так скучно)))
Тогда shared viewmodel
источник

EP

Eugene P. in Android Architecture
Ещё и поворот экрана переживет
источник

AA

Aleksey Antonov in Android Architecture
Sergey Mitrofanov
Сама идея передачи списка между фрагментами для его модификации выглядит странно. Что мешает "отколдовать" в том же фрагменте?
ну допустим с первого фрагмента идут запросы, для этих запросов нужен какой то большой набор всяких штук типо - фильтры, вид сортировки, какие то наборы вариации, и есть кнопочка при клике на которую откроется другой фрагмент где это можно красиво все настроить. потом можно вернуться обратно и отправить запрос с этими параметрами
источник

EP

Eugene P. in Android Architecture
Sergey Mitrofanov
Я бы не стал. Бандл/Парселлабл не подходит для большого количества данных
В бандл можно передавать без сериализации через биндер
источник

S

Sergey Mitrofanov in Android Architecture
Aleksey Antonov
ну допустим с первого фрагмента идут запросы, для этих запросов нужен какой то большой набор всяких штук типо - фильтры, вид сортировки, какие то наборы вариации, и есть кнопочка при клике на которую откроется другой фрагмент где это можно красиво все настроить. потом можно вернуться обратно и отправить запрос с этими параметрами
Это звучит как настройка фильтра, и его последующее применение к списку на возврате, а не как модификация списка по каждому чиху на втором экране )
источник

QH

Quantum Harmonizer in Android Architecture
Eugene P.
В бандл можно передавать без сериализации через биндер
эффективность, правда, будет как у синглтона
источник

S

Sergey Mitrofanov in Android Architecture
Eugene P.
В бандл можно передавать без сериализации через биндер
Можно, но там же платформенные ограничения есть на объем, а список, говорят, длинный
источник

Kd

Konstantin dmz9 in Android Architecture
Aleksey Antonov
всем привет! такой кейс интересный, хотелось бы узнать у людей с опытом. проект новый пилю, завез dagger2, moxy2,cicerone, решил делать MVP. есть фрагмент, у этого фрагмента есть список довольно таки большой, нужно передать его в новый фрагмент, что то поколдовать и вернуться потом обратно в первый фрагмент и получить результат колдовства. если я создам класс синглтон и заинжекчу через даггер  со скоупом жизни пока жив первый экран. типо первый фрагмент сует туда список, на втором фрагменте этот список получу, изменю, по возврату в первом фрагменте во onViewAttach дерну измененный список... такое практикуется вообще? чет сделал понравилось) а потом задумался может в чем то может быть подвох и потом придется переписывать? короче говоря будут ли в меня кидаться тряпками за такую реализацию в мидловом обществе?)
пиши на диск или в базу
источник

AA

Aleksey Antonov in Android Architecture
Konstantin dmz9
пиши на диск или в базу
но а если мне при выходе с экрана мне надо забыть этот список как страшный сон, базу тянуть такое себе... что неужели использовать синглтон это настолько плохо?
источник

Kd

Konstantin dmz9 in Android Architecture
тоже был такой кейс где в формочке есть поле... ну как поле, таблица на 60 строк в каждой надо что то отметить поменять, однообразно но в том же экране сложновато редактировать, и перекидывать через бандл... ну такое, короче просто пишешь в персистентное хранилище - работает, ну и плюс защита от "случайно снес приложение из задач", когда зайдет обратно ничего не потеряется
источник

ES

Egor Sigolaev in Android Architecture
Aleksey Antonov
но а если мне при выходе с экрана мне надо забыть этот список как страшный сон, базу тянуть такое себе... что неужели использовать синглтон это настолько плохо?
Синглтон антипаттерн
источник

Kd

Konstantin dmz9 in Android Architecture
Aleksey Antonov
но а если мне при выходе с экрана мне надо забыть этот список как страшный сон, базу тянуть такое себе... что неужели использовать синглтон это настолько плохо?
синглтон нормальный паттерн но тут не нужен
источник

QH

Quantum Harmonizer in Android Architecture
Egor Sigolaev
Синглтон антипаттерн
только если он с изменяемым состоянием и это не мемоизация
источник

ES

Egor Sigolaev in Android Architecture
Quantum Harmonizer
только если он с изменяемым состоянием и это не мемоизация
Ну да. Особенно передавать данные через него в другую вью, самое любимое для новичков
источник

QH

Quantum Harmonizer in Android Architecture
Egor Sigolaev
Ну да. Особенно передавать данные через него в другую вью, самое любимое для новичков
дадада, хочу найти автора этого совета
источник