JSON dá poder ao mundo!
Vivemos em um tempo que as APIs governam a terra. As APIs alimentam nosso mundo de informações de nossos desktops para nossos telefones para nossos relógios e até mesmo para nossos carros.
Cada dispositivo conectado que podemos pensar pode ser um ponto até sua própria API para termos acessos a seus dados, etc.
Nos ambientes em contínua mudança de linguagens de programação e dispositivos, APIs são a única coisa que parecem ser confiável e constantes. E no mundo das APIs, há um rei de formatos: o JSON.
Neste artigo, teremos uma breve introdução ao JSON e tocar em algumas das razões pelas quais ele foi escolhido para alimentar o nosso mundo.
JSON nos dá um formato bonito e flexível. Ao contrário do XML, que tem uma estrutura sem tipagem nativa, o JSON nos dá algumas diretrizes simples a serem seguidas para permitir uma definição de estrutura e tipos muito fáceis. Isto faz o JSON muito bom para representar estrutura de dados e sua tipagem simples num formato simples, direto e de relativo fácil entendimento.
A estrutura JSON tem 6 tipagens / estruturas básicas:
1. Number
2. String
3. Boolean
4. Array
5. Object
6. null
Observe que temos um par de valores (array e objeto) que podem aninhar outros valores. É nestes valores aninhados onde obtemos poderes especiais com o JSON porque nos permite expandir nossa estrutura de dados.
Como exemplo de dados de aninhamento, vamos criar um objeto JSON para um registro:
{ "nome": "Devblog Drall" ,"website": "http://devblog.drall.com.br" ,"total_posts":"1048" ,"total_unique_visits_month":[ { "data":"11/2016" ,"period":"115 first hours of the month" ,"total":2891 } { "data":"10/2016" ,"period":"entire month" ,"total":15962 } ]
Observe que os valores aninhados em total_unique_visits_month. Ele é um elenco matriz, e cada membro desta matriz é um novo valor aninhado, no caso um objeto.
Quando queremos solicitar valores a partir deste objeto JSON, nós simplesmente utilizamos os “namespace” ou chaves.
Por exemplo, para obter o website deste registro, em JavaScript (poderia ser quase qualquer outra linguagem de programação, alterando apenas a notação/sintaxe) seria simplesmente registro.website.
Se for para obter o total de visitas únicas do mês anterior, bastaria registro.total_unique_visits_month[2].total e seria retornado 15962.
Este modelo de estruturação de dados baseado em JSON torna os dados um modelo muito intuitivo e fácil de usar, de entender a estrutura e valores, assim como obter os dados desejados.