Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Привет! Самое время в предновогоднее настоящее поделиться с вами опенсУрс проектом :) Встречайте -> Cardoteka <- строгая типизированная обёртка над Shared Preferences (SP) в мире Flutter. Этот материал будет коротким, с рекламными нотками (а точнее, приглашающий к дискуссии в issues и в комментарии) и readme-подтекстом. Так или иначе, это заслуженная метка "Обзор".
https://github.com/PackRuble/cardoteka
Обозначу в первую очередь пару вещей:
У проекта есть подробный README, который я намерен продублировать в некоторой степени
Есть
самодокументированный код. Серьёзно, над этим велась работа - это не пустой текст ради баллов в pub.devЕсть тесты, если вы любите такое познание
Подробный анализ "зачем и почему" готовится в виде отдельной публикации - технической, объёмной и серьёзной (насколько позволяет моя серьёзность). Но чтобы заинтересовать читателя и оправдать появление текущей статьи, а также указать на важность существования этой "обёртки над SP", заявляю: (с префиксом "теперь мы можем")
упорядоченно храним ключ и значение по умолчанию. Легко создаём новую пару, точно уверены в её типах
вытекающий приятный бонус в использовании всего лишь двух методов
get
|set
(или CRUD методов), чтобы получить/сохранить значение любого типаnullable значения - не помеха! Имитируем поведение и используем методы
getOrNull
|setOrNull
умеем слушать поступление/удаление значения из хранилища и реактивно обновлять состояния