Files
deep_go/homework/09.md
2025-05-23 07:54:04 +03:00

2.0 KiB
Raw Blame History

Домашнее задание №9

📗 В домашнем задании нужно реализовать сериализацию объекта структуры данных в .properties формат с использованием тегов структур и рефлексии.

При сериализации данных в некоторых случаях могут возникнуть проблемы с пустыми значениями. Например, если у вас есть структура, в которой некоторые поля могут быть не заполнены, и вы сериализуете, то в результате получится объект с пустыми полями. Если это не является ожидаемым поведением, то в нашей реализации можно будет использовать тег omitempty, чтобы пропустить пустые поля при сериализации.

Стуктура для сериализации в .properties формат (поподробнее с .properties форматом можно ознакомиться здесь):

type Person struct {
	Name    string `properties:"name"`
	Address string `properties:"address,omitempty"`
	Age     int    `properties:"age"`
	Married bool   `properties:"married"`
}

📌 Для выполнения домашнего задания подготовлен шаблон кода и основные тесты, которую помогут проверить корректность реализации конвертации. Шаблона доступен по ссылке.

Задание со звездочкой

Выполнять необязательно, но если вы хотите, можете попробовать реализовать обощенную функцию сериализации, которая сможет работать не только со структорой Person.