JSON-Aprendendo a se comunicar

JSON (JavaScript Object Notation) é um modelo para armazenamento e transmissão de informações no formato texto. Apesar de muito simples, tem sido bastante utilizado por aplicações Web devido a sua capacidade de estruturar informações de uma forma bem mais compacta do que a conseguida pelo modelo XML, tornando mais rápido o parsing dessas informações.
Isto explica o fato de o JSON ter sido adotado por empresas como Google e Yahoo, cujas aplicações precisam transmitir grandes volumes de dados.
Sintaxe no JSON
A ideia utilizada pelo JSON para representar informações é tremendamente simples: para cada valor representado, atribui-se um nome (ou rótulo) que descreve o seu significado. Esta sintaxe é derivada da forma utilizada pelo JavaScript para representar informações. Por exemplo, para representar o ano de 2012, utiliza-se a seguinte sintaxe:
Listagem 1: Representando o ano de 2012
1"ano": 2012
Um par nome/valor deve ser representado pelo nome entre aspas duplas, seguido de dois pontos, seguido do valor. Os valores podem possuir apenas 3 tipos básicos: numérico (inteiro ou real), booleano e string. As Listagens 2, 3, 4 e 5 apresentam exemplos. Observe que os valores do tipo string devem ser representados entre aspas.
Listagem 2: Representando um número real
1"altura": 1.72
Listagem 3: Representando uma string
1"site": “www.devmedia.com.br”
Listagem 4: Representando um número negativo
1"temperatura": -2
Listagem 5: Representando um valor booleano
1"casado": true
A partir dos tipos básicos, é possível construir tipos complexos: array e objeto. Os arrays são delimitados por colchetes, com seus elementos separados entre vírgulas. As listagens 6 e 7 mostram exemplos.
Listagem 6: Array de Strings
1[“RJ”, “SP”, “MG”, “ES”]
Listagem 7: Matriz de Inteiros
1[ 2[1,5], 3[-1,9], 4[1000,0] 5]
Os objetos são especificados entre chaves e podem ser compostos por múltiplos pares nome/valor, por arrays e também por outros objetos. Desta forma, um objeto JSON pode representar, virtualmente, qualquer tipo de informação! O exemplo da Listagem 8 mostra a representação dos dados de um filme.
Listagem 8: Objeto
1 { 2 “titulo”: “JSON x XML”, 3 “resumo”: “o duelo de dois modelos de representação de informações”,4 “ano”: 2012,5 “genero”: [“aventura”, “ação”, “ficção”] 6 }
É possível representar mais de um objeto ou registro de uma só vez. Um exemplo é apresentado na Listagem 9, onde dois filmes são representados em um array.
Listagem 9: Array de objetos
1[“RJ”, “SP”, “MG”, “ES”]
É possível representar mais de um objeto ou registro de uma só vez. Um exemplo é apresentado na Listagem 9, onde dois filmes são representados em um array.
Listagem 9: Array de objetos
1 [ 2 { 3 “titulo”: “JSON x XML”,4 “resumo”: “o duelo de dois modelos de representação de informações”, 5 “ano”: 2012, 6 “genero”: [“aventura”, “ação”, “ficção”] 7 },8 { 9 “titulo”: “JSON James”, 10 “resumo”: “a história de uma lenda do velho oeste”, 11 “ano”: 2012, 12 “genero”: [“western”] 13 }14 ]
Por fim, é importante citar que a palavra-chave “null” deve ser utilizada para a representação de valores nulos (Listagem 10).
Listagem 10: Representando um valor nulo
1"site":null
Neste artigo, apresentamos os conceitos fundamentais sobre o modelo JSON para a representação de informações – atualmente em nossas APIs utilizamos o JSON para transmitir informações.
Através do JSON podemos representar informações de uma forma mais compacta, rápida e simples do que na XML. Em contrapartida, a XML é uma linguagem mais rica, que possui um maior número de aplicações e um maior grau de maturidade.
Quer saber mais sobre métodos e documentação do nosso ConectorGATE?
SAIBA MAIS:
FONTE: Blog DevMedia