
JSON 인코딩
json.Marshal, json.Unmarshal, struct tags, custom marshaling, streaming, RawMessage
20 면접 질문·
Mid-Level
1Go struct를 JSON으로 인코딩할 수 있는 함수는 무엇입니까?
1
Go struct를 JSON으로 인코딩할 수 있는 함수는 무엇입니까?
답변
json.Marshal은 Go struct를 JSON 바이트로 인코딩합니다. 이 함수는 struct tags를 읽어 직렬화를 커스터마이징합니다(이름 변경, 필드 생략). io.Writer로 스트리밍할 때는 json.NewEncoder를 사용하면 메모리에 중간 버퍼를 만들지 않아도 됩니다.
2JSON을 Go struct로 디코딩할 수 있는 함수는 무엇입니까?
2
JSON을 Go struct로 디코딩할 수 있는 함수는 무엇입니까?
답변
json.Unmarshal은 JSON 바이트를 Go struct로 디코딩합니다. 데이터가 올바르게 기록되려면 대상 struct에 대한 포인터를 전달해야 합니다. io.Reader에서 스트리밍할 때는 전체 JSON을 메모리에 로드하지 않으므로 json.NewDecoder가 더 효율적입니다.
3직렬화 중에 필드 이름을 변경할 수 있는 JSON struct tag는 무엇입니까?
3
직렬화 중에 필드 이름을 변경할 수 있는 JSON struct tag는 무엇입니까?
답변
json:"custom_name" 태그는 JSON 직렬화 중에 필드 이름을 변경할 수 있게 합니다. 예를 들어 UserID 필드를 JSON에서 user_id로 만들 수 있습니다. 명명 규칙을 지키는 데 유용합니다(JSON의 snake_case vs Go의 CamelCase).
4
필드를 직렬화에서 완전히 제외하는 JSON struct tag는 무엇입니까?
5
값이 비어 있을 때 필드를 생략할 수 있는 JSON struct tag는 무엇입니까?
+17 면접 질문
기타 Go 면접 주제
Go 기초
Junior
25개 질문Go 데이터 구조
Junior
20개 질문Go 인터페이스
Junior
18개 질문에러 처리
Junior
20개 질문Goroutine 기초
Junior
20개 질문Channels
Junior
22개 질문Go Modules
Mid-Level
18개 질문HTTP 서버
Mid-Level
24개 질문HTTP 클라이언트
Mid-Level
18개 질문Database/SQL
Mid-Level
22개 질문context 패키지
Mid-Level
20개 질문Testing
Mid-Level
22개 질문동시성 패턴
Mid-Level
24개 질문동기화 프리미티브
Mid-Level
22개 질문Go 웹 프레임워크
Mid-Level
20개 질문REST API 설계
Mid-Level
20개 질문gRPC
Mid-Level
22개 질문Reflection
Senior
20개 질문메모리 관리
Senior
24개 질문성능 최적화
Senior
22개 질문Generics
Senior
20개 질문Go Design Patterns
Senior
24개 질문Microservices
Senior
24개 질문보안 및 인증
Senior
24개 질문Docker & Containerization
Senior
20개 질문Kubernetes Basics
Senior
22개 질문고급 Go
Senior
20개 질문CLI 개발
Senior
20개 질문