Введение в JSON в Dart
Сериализация - перевод значения в последовательность символов, которую можно сохранить или передать. Обратный шаг - десериализация: из текста снова получают поля объекта с теми же данными.
Для обмена между программами часто берут формат JSON:
фигурные скобки, пары имя-значение, кавычки у строк.
В Dart работу с этим форматом дает библиотека
dart:convert: функции jsonEncode
и jsonDecode превращают карты, списки
и примитивы в строку и обратно.
Класс Post с полями title и
likes удобно описывает заметку в ленте.
Чтобы связать объект с JSON, в типе задают метод
toJson, который собирает карту ключей,
и фабрику Post.fromJson, которая читает
карту и создает экземпляр.
После подготовки правил запись в строку выглядит
как вызов jsonEncode от карты из
toJson. Для элемента с названием
"note" и тремя лайками текст по смыслу
равен {"title":"note","likes":3} - имена
ключей совпадают с тем, что вернул метод записи.
Ту же строку можно передать в другой процесс или
положить в файл, а затем восстановить объект через
jsonDecode и fromJson.