
Кодування JSON
json.Marshal, json.Unmarshal, struct tags, custom marshaling, streaming, RawMessage
1Яка функція дозволяє закодувати Go struct у JSON?
Яка функція дозволяє закодувати Go struct у JSON?
Відповідь
json.Marshal кодує Go struct у байти JSON. Ця функція читає struct tags для налаштування серіалізації (перейменування, пропуск полів). Для стрімінгу в io.Writer використання json.NewEncoder дозволяє уникнути створення проміжного буфера в пам'яті.
2Яка функція дозволяє декодувати JSON у Go struct?
Яка функція дозволяє декодувати JSON у Go struct?
Відповідь
json.Unmarshal декодує байти JSON у Go struct. Потрібно передати вказівник на цільову struct, щоб дані були записані правильно. Для стрімінгу з io.Reader json.NewDecoder ефективніший, оскільки уникає завантаження всього JSON у пам'ять.
3Який JSON struct tag дозволяє перейменувати поле під час серіалізації?
Який JSON struct tag дозволяє перейменувати поле під час серіалізації?
Відповідь
Тег json:"custom_name" дозволяє перейменувати поле під час серіалізації JSON. Наприклад, поле UserID може стати user_id у JSON. Це корисно для дотримання угод про іменування (snake_case у JSON проти CamelCase у Go).
Який JSON struct tag повністю виключає поле з серіалізації?
Який JSON struct tag дозволяє пропустити поле, якщо його значення порожнє?
+17 питань зі співбесід
Інші теми співбесід Go
Основи Go
Структури даних Go
Інтерфейси Go
Обробка помилок
Основи goroutines
Channels
Go Modules
HTTP-сервер
HTTP-клієнт
Database/SQL
Пакет context
Testing
Патерни конкурентності
Примітиви синхронізації
Веб-фреймворки Go
Проєктування REST API
gRPC
Reflection
Керування пам'яттю
Оптимізація продуктивності
Generics
Go Design Patterns
Microservices
Безпека та автентифікація
Docker & Containerization
Kubernetes Basics
Просунутий Go
Розробка CLI
Опануй Go для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно