@SerialName e mapeamento personalizado de campos
Associe nomes Kotlin a chaves JSON diferentes
@SerialName e mapeamento personalizado de campos é uma aula grátis de Kotlin Multiplatform Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kotlin Multiplatform Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
Os nomes nem sempre correspondem
As APIs reais adoram chaves como user_name, mas o Kotlin prefere userName. @SerialName permite que os dois sejam diferentes sem conflitos.
Renomeie um único campo
Coloque @SerialName acima de uma propriedade para informar ao serializador a qual chave JSON ela realmente corresponde.
@SerialName("user_name") val userName: StringO Kotlin permanece idiomático
Seu código mantém nomes limpos em camelCase, enquanto o formato de transmissão conserva o que o back-end escolheu. Todos ganham.
Snake case é comum
Muitas APIs JSON usam snake_case, por isso mapear created_at para uma propriedade createdAt é uma das utilizações mais comuns.
@SerialName("created_at") val createdAt: StringMapear palavras reservadas
Se o JSON tiver uma chave como type que entre em conflito com o seu estilo, @SerialName permite dar à propriedade o nome que ficar mais claro.
@SerialName("type") val kind: StringFunciona em todos os campos
Você pode anotar quantas propriedades quiser, misturando campos renomeados e campos com nomes padrão na mesma classe de dados.
Renomear também as entradas de enumeração
@SerialName também funciona em constantes de enumeração, portanto uma entrada ACTIVE pode ser serializada como a string em minúsculas que a API espera.
@SerialName("active") ACTIVEEstratégia de nomes global
Se todas as chaves estiverem em snake_case, você poderá definir uma JsonNamingStrategy uma única vez, em vez de anotar cada campo manualmente.
Json { namingStrategy = JsonNamingStrategy.SnakeCase }A anotação prevalece
Quando uma estratégia global e um @SerialName explícito se aplicam, a anotação tem prioridade para esse campo.
A mesma classe, nos dois sentidos
Os nomes personalizados se aplicam tanto à codificação quanto à decodificação, portanto um único modelo anotado lida com a leitura e a escrita de JSON.
Desacoplado do back-end
Mapear as chaves explicitamente significa que uma renomeação no back-end altera apenas uma anotação, e não toda a sua base de código.
Verificação rápida
Como você mapeia uma chave JSON para uma propriedade Kotlin com outro nome?
Recapitulação
Use @SerialName para mapear chaves JSON com nomes diferentes para nomes idiomáticos do Kotlin em campos e enumerações, ou defina uma estratégia de nomes global para modelos inteiros.
Aprenda Kotlin com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 30
- Aulas
- 120
Perguntas Frequentes
A aula “@SerialName e mapeamento personalizado de campos” é grátis?
Sim — o texto completo de “@SerialName e mapeamento personalizado de campos” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kotlin Multiplatform Academy, atualize para CoddyKit PRO. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.
O que vou aprender em “@SerialName e mapeamento personalizado de campos”?
Associe nomes Kotlin a chaves JSON diferentes Você pratica Kotlin Multiplatform Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Kotlin Multiplatform Academy?
Nenhuma experiência prévia é necessária. Kotlin Multiplatform Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “@SerialName e mapeamento personalizado de campos”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Kotlin Multiplatform Academy?
Sim. Cada aula de Kotlin Multiplatform Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Modelos de dados @Serializable
- @SerialName e mapeamento personalizado de campos
- Campos anuláveis, padrão e opcionais
- Integre a serialização ao Ktor