Files
deep_go/homework/09.md

28 lines
2.0 KiB
Markdown
Raw Normal View History

2025-05-23 07:54:04 +03:00
# Домашнее задание №9
📗 В домашнем задании нужно реализовать сериализацию объекта структуры данных в .properties формат с использованием тегов структур и рефлексии.
При сериализации данных в некоторых случаях могут возникнуть проблемы с пустыми значениями. Например, если у вас есть структура, в которой некоторые поля могут быть не заполнены, и вы сериализуете, то в результате получится объект с пустыми полями. Если это не является ожидаемым поведением, то в нашей реализации можно будет использовать тег omitempty, чтобы пропустить пустые поля при сериализации.
Стуктура для сериализации в .properties формат (поподробнее с .properties форматом можно ознакомиться здесь):
```go
type Person struct {
Name string `properties:"name"`
Address string `properties:"address,omitempty"`
Age int `properties:"age"`
Married bool `properties:"married"`
}
```
📌 Для выполнения домашнего задания подготовлен шаблон кода и основные тесты, которую помогут проверить корректность реализации конвертации. Шаблона доступен по ссылке.
### Задание со звездочкой
Выполнять необязательно, но если вы хотите, можете попробовать реализовать обощенную функцию сериализации, которая сможет работать не только со структорой Person.