사용 방법
- API 응답 같은 JSON 예시를 왼쪽 칸에 붙여넣습니다.
- 변환할 언어를 고르고, 필요하면 최상위 타입 이름을 바꿉니다.
- 변환을 누릅니다. 중첩 객체는 각각 별도 타입이 됩니다.
- 코드를 복사하거나 소스 파일로 내려받습니다.
API 응답마다 모델 타입을 손으로 쓰면 오래 걸리고 오타도 생깁니다. 이 JSON 타입 변환기는 예시 JSON 을 읽어 맞는 코드를 만들어 줍니다. TypeScript 인터페이스, Codable 을 따르는 Swift 구조체, Kotlin data class, Dart 클래스, json 태그가 붙은 Go 구조체, Python dataclass, C# 클래스, Java 클래스를 지원합니다. 중첩 객체는 각자 이름 붙은 타입이 되고, 배열은 타입이 있는 리스트가 되며, 키 이름은 대상 언어의 명명 규칙으로 바뀌고 필요한 곳에는 원래 JSON 키가 남습니다.
변환은 오픈소스 quicktype 의 엔진인 quicktype-core(Apache License 2.0)가 맡고, 처음 변환을 누를 때 이 페이지로 불러옵니다. "타입만" 을 체크하면 순수한 타입 선언만 나옵니다. Swift 는 Codable 채택과 CodingKeys 는 남기고 편의 이니셜라이저만 뺍니다. 체크를 풀면 TypeScript Convert 클래스, Kotlin Jackson 어노테이션, Python from_dict 함수처럼 quicktype 이 기본으로 쓰는 파싱 도우미 코드까지 함께 나옵니다.
타입은 예시에서 추론하므로 모든 필드가 드러나는 데이터를 넣는 것이 좋습니다. 값이 null 이면 옵셔널이나 any 계열 타입이 되고, 소수점 없는 숫자는 정수가 되며, 여러 곳에 같은 모양으로 나오는 객체는 한 타입으로 합쳐질 수 있습니다. 붙여넣은 JSON 은 브라우저 밖으로 나가지 않습니다. 파싱과 코드 생성 모두 기기 안에서 끝나며 업로드하거나 저장하지 않습니다.