
Иногда JSON от API необходимо конвертировать в объект и желательно в иммутабельное значение. На Dart это возможно, но для этого необходимо много кодить для каждого из объектов. К счастью, существует пакет, который поможет Вам все это выполнить, и в этой статье я Вам расскажу об этом способе.
Наша цель:
1. Сериализация
final user = User.fromJson({"name": "Maks"});
final json = user.toJson();
2. Использование как значения
final user1 = User.fromJson({"name": "Maks"});
final user2 = User((b) => b..name='Maks');
if (user1 == user2) print('Один и тот же пользователь');
3. Иммутабельность
user.name = 'Alex'; // Неверно
final newUser = user.rebuild((b) => b..name='Alex'); // Верно