оч нетипобезопасная
Так я же и кидаю рантайм исключение, если тип не тот
угу, питон с джаваскриптом тоже так делают)
Так а что в этом плохого? Мне кажется кинуть исключение лучше, чем потом долбиться при тесте и не понимать где не сейвятся данные.
А ещё лучше использовать типы, чтобы кидать исключение не пришлось.
Вплане? Какие типы?
глянь паттерн typed key
Спасибо
Это паттерн в языке или андроиде? Чего то найти не могу.
https://matklad.github.io/2018/05/24/typed-key-pattern.html
Пасиба
еще бы в котлине можно было расширить стдлиб типы чтобы можно было в некоторых случаях не подставлять дефолтное значение каждый раз, жаль нельзя насколько я знаю
Я не понял, что имелось в виду.
сейчас ты можешь расширить тип только функцией и переменной, а как ты к примеру расширишь тип Boolean интерфейсом каким-нибудь?
никак, а к чему это?
можно было бы сделать так чтобы он для Int, Float, Long брал 0 по умолчанию и “” для String, false (к примеру) для Boolean. А ключ генерировал из названия переменной. И тогда можно было бы ничего не вставлять
а всё равно нет типобезопасного способа сказать, что в таком-то месте у нас тип Int или Float или Long или String
потому что sharedpreferences под капотом устроены так?
а как им быть устроенными?)
я тебе вопрос задал
тогда я его не понял
почему нетипобезопасный, если ты проверяешь его?
типобезопасно — это когда компилятор может проверить
Вот есть отличный (почему-то непопулярный) паттерн, когда строковый ключ спекают с типом.
а пример на котлине есть?
у меня нет) в IntelliJ много где этот паттерн используется, но конкретно файл не назову
т.е. в андроиде этому применения не нашел? зато посоветовал)
префы, бандлы-интенты теги вью и т. п.
а ты сам используешь это?
конечно
а что тут такого?
а почему тогда примера нет?
потому что было давно, на другом проекте и на джаве
а щас такой проблемы с ключами уже нет?
на текущем проекте — нет
а что именно используешь?
ну у меня сейчас префы не по фиксированным ключам, а бандлов вообще штуки две
я так понял есть решение в качестве Proto DataStore
Обсуждают сегодня