Size: a a a

Kotlin Community

2019 December 25

AN

Alexander Nozik in Kotlin Community
Ramazan
А почему нет? То есть плохо хранить там базу пока приложение живёт в памяти?
Это глобальное изменяемое состояние в одном из худших своих проявлений
источник

AN

Alexander Nozik in Kotlin Community
Если хотите, чтобы на ваш код никто всерьез не смотрел - хорошее решение
источник

QH

Quantum Harmonizer in Kotlin Community
Ramazan
А почему нет? То есть плохо хранить там базу пока приложение живёт в памяти?
Это неявная зависимость. Задолбаешься дебажить и тестировать, когда поведение метода зависит от того, что не передаётся ему в параметрах.
источник

R

Ramazan in Kotlin Community
Я храню в данный момент там некие карточки (модель) в маин у меня список этих карточек, открывая активити я передаю в интент ид карточки и достаю потом нужную из снглтона.
Вместо этого мне лучше заново создавать объект с базой карточек и потом доставать?
источник

AO

Alexey Otts in Kotlin Community
Ramazan
А почему нет? То есть плохо хранить там базу пока приложение живёт в памяти?
такие штуки должны приниматься явно в конструкторе или параметрах
источник

AN

Alexander Nozik in Kotlin Community
Ramazan
Я храню в данный момент там некие карточки (модель) в маин у меня список этих карточек, открывая активити я передаю в интент ид карточки и достаю потом нужную из снглтона.
Вместо этого мне лучше заново создавать объект с базой карточек и потом доставать?
Надо понять, что любое глобальное изменяемое состояние - это плохо. Лучше всего передавать ссылку на состояние.
источник

QH

Quantum Harmonizer in Kotlin Community
Интересно, кто-нибудь уже описал, почему в андроиде это не работает и никогда не будет нормально работать? Чёт постоянно эту ошибку вижу.
источник

QH

Quantum Harmonizer in Kotlin Community
Alexey Otts
такие штуки должны приниматься явно в конструкторе или параметрах
видишь слово «активити» — забываешь слово «конструктор» :)
источник

AO

Alexey Otts in Kotlin Community
Quantum Harmonizer
видишь слово «активити» — забываешь слово «конструктор» :)
андроид это конечно полный пиздец
источник

R

Ramazan in Kotlin Community
Может ссылку на статью хорошую скинете если знаете, на тему хранения данных во время работы приложения и доступа к ним из разных активити
источник

K

Kopusha in Kotlin Community
лучше статью про паттерны программирования, чем про андроид или котлин. Типа "синглтон антипаттерн, потому что ...". Вообще, пока у тебя нет тестов разницы ты не почувствуешь.
источник

AN

Alexander Nozik in Kotlin Community
Kopusha
лучше статью про паттерны программирования, чем про андроид или котлин. Типа "синглтон антипаттерн, потому что ...". Вообще, пока у тебя нет тестов разницы ты не почувствуешь.
Скорее пока программа на 300 строк. Как только будет большая с модулями - будет бедаа
источник

QH

Quantum Harmonizer in Kotlin Community
Kopusha
лучше статью про паттерны программирования, чем про андроид или котлин. Типа "синглтон антипаттерн, потому что ...". Вообще, пока у тебя нет тестов разницы ты не почувствуешь.
Есть разница! Он же рассчитывает, что одна активити изменит состояние, а другая это увидит. А это неправда.
источник

K

Kopusha in Kotlin Community
с синглтоном или базой поведение не изменится, так что без разницы. Если не делать чего-то дополнительно.
источник

K

Kopusha in Kotlin Community
Alexander Nozik
Скорее пока программа на 300 строк. Как только будет большая с модулями - будет бедаа
а какая именно беда?
источник

QH

Quantum Harmonizer in Kotlin Community
Ramazan
Я храню в данный момент там некие карточки (модель) в маин у меня список этих карточек, открывая активити я передаю в интент ид карточки и достаю потом нужную из снглтона.
Вместо этого мне лучше заново создавать объект с базой карточек и потом доставать?
источник

AN

Alexander Nozik in Kotlin Community
Kopusha
а какая именно беда?
Синхронизация состояния и его фрагментация
источник

K

Kopusha in Kotlin Community
это про проблемы глобального стейта. Если он у тебя есть, то они останутся, инжектишь ты его через DI или через синглтон, нет?
источник

K

Kopusha in Kotlin Community
с синглтонами код нетестируемый, имхо это основной поинт. А у новичков тестов часто нет и они справедливо не видят разницы, потому что ее почти нет.
источник

QH

Quantum Harmonizer in Kotlin Community
А ещё нечитаемый и неотлаживаемый.
Всё это справедливо про изменяемые синглтоны.
источник