Lição 4

Objetos e arrays

Estruturas aninhadas, nomes de chaves e modelagem de dados reais.

A maioria dos documentos JSON reais combina objetos e arrays para representar entidades e coleções. Definir formas claras torna APIs e configs mais fáceis de consumir.

Objetos como registros

Um objeto costuma modelar uma coisa — um usuário, um pedido, um bloco de configurações:

{
  "userId": "u_42",
  "email": "[email protected]",
  "preferences": {
    "theme": "dark",
    "notifications": true
  }
}

Objetos aninhados agrupam campos relacionados sem achatar nomes como preferences_theme.

Arrays como listas

Arrays modelam coleções ordenadas: tags, itens de linha, resultados de busca:

{
  "tags": ["json", "api", "tutorial"],
  "items": [
    { "sku": "A1", "qty": 2 },
    { "sku": "B3", "qty": 1 }
  ]
}

Convenções de nomes de chaves

Chaves JSON são sensíveis a maiúsculas e minúsculas. Estilos comuns:

  • camelCasefirstName (típico em APIs JavaScript)
  • snake_casefirst_name (comum em backends Python/Ruby)
  • kebab-case — raro dentro de chaves porque - é menos; em geral evitado

Escolha um estilo por API e mantenha consistência.

Estruturas vazias

Ambas são válidas e significam coisas diferentes:

{ "list": [] }
{ "list": {} }

[] é um array vazio; {} é um objeto vazio. Não troque um pelo outro a menos que seu schema permita ambos.

Profundidade e legibilidade

Aninhamento profundo (a.b.c.d.e) espelha os dados, mas prejudica a legibilidade. Muitas equipes achatam com nomes de chaves claros ou paginam arrays grandes. Ao ler JSON desconhecido, comece no nível superior, expanda um objeto ou array por vez e observe padrões repetidos — é assim que a maioria dos payloads de API é desenhada.

Voltar à visão geral do curso