O bendito JSON, e o maldito XML!

Patrick Augusto
3 min readJun 4, 2022

--

Bom dia, boa tarde, boa noite!

Esse post é o segundo de uma série que comecei, escrevi primeiro sobre “O bendito SQL”, agora vou explanar um pouco sobre JSON e XML! Claro, trazendo um overview basicão =)

JSON, é aquele assassino?

Quase isso.

O significado dessa sigla é JavaScript Object Notation, são estruturas de dados populadas de qualquer linguagem para formatos que são reconhecíveis por outras linguagens e plataformas. Basicamente, usamos para transferir dados entre diferentes sistemas.

A estrutura é basicamente com:

  • chaves { } para delimitar os objetos e obrigatórias para iniciar e encerrar o conteúdo;
  • colchetes [ ] para indicar um array;
  • dois pontos : para separar a chave e seu valor correspondente;
  • vírgula , para indicar a separação entre os elementos.

Exemplos:

String

{ "nome": "Patrick"}

Objeto

{ 
"pessoa": {
"nome": "Patrick",
"idade": 21
}
}

Lista de objetos

Confira como fazer a notação para indicar uma lista de objetos:

{   
"pessoas": [
{"nome": "Patrick", "idade": 21},
{"nome": "Você", "idade": 300},
{"nome": "George Bush", "idade": 75}
]
}

Caso você se depare com um JSON todo cagada visualmente, tipo isso:

{"pessoas":[{"nome": "Patrick", "idade": 21},{"nome": "Você", "idade": 300},{"nome": "George Bush", "idade": 75}]}

Você pode procurar por “Json formatter” no google, que você consegue formatar, se liga:

Coloco o JSON cagado
O programa me trás formatado, bonitinho pronto para ser analisado

E agora, XML?

Bom, a premissa principal do XML (eXtensible Markup Language) é parecida com a do JSON:

  • São estruturas de dados populadas de qualquer linguagem para formatos que são reconhecíveis por outras linguagens e plataformas. Basicamente, usamos para transferir dados entre diferentes sistemas
  • Baseado em chave/valor

Se precisar formatar um XML, também pode procurar por “Xml formatter” no google, que vai conseguir formatar essa monstruosidade.

Mas, temos algumas diferenças… Começando pela

Notação:

O XML utiliza uma estrutura de tags para representar os objetos, e ela precisa conter o par (tag de abertura e de fechamento): <nome>Patrick</nome>.

No XML não temos aspas, nem nas chaves, nem nos valores. Vou mostrar com o mesmo exemplo de estrutura que tivemos no JSON:

<?xml version="1.0" encoding="UTF-8" ?>
<pessoas>
<pessoa>
<nome>Patrick</nome>
<idade>21</idade>
</pessoa>
<pessoa>
<nome>você</nome>
<idade>300</idade>
</pessoa>
<pessoa>
<nome>George Bush</nome>
<idade>75</idade>
</pessoa>
</pessoas>

Tipos de dados:

O XML trabalha com diferentes tipos de dados, como imagem e gráficos. O que não seria possível transmitir no JSON, pois só tem suporte a números e textos. Mas, em compensação, o XML não oferece suporte a arrays.

Facilidade:

Como vimos, o JSON é bem mais de boa de compreender, a estrutura e notação são bem mais simples.

Concluindo

Atualmente, em muitos softwares veremos mais o JSON. Principalmente pela simplicidade.

Mas, qual usar?

Acredito que resposta certa seria: depende. Depende do teu software, pro que você irá utilizar, qual contexto.

Um software que trabalha muito bem com SOAP, ainda exige o XML.

Se você precisa criar algo leve, rápido, sem muita exigência, ainda mais se o JavaScript faz parte da sua rotina, o JSON deve facilitar seu trabalho.

Agora, se o sistema exige uma maior complexidade de dados, com padronização madura na validação dos mesmos, e transformações frequentes, o XML pode ser uma boa pedida.

É isso aí meus patrões!

Espero que tenha entendido a explicação sobre o assunto, no próximo post vou trazer alguns conceitos sobre API!

Até breve :)

--

--

Patrick Augusto

Sou programador e músico, aqui quero compartilhar pensamentos, ideias, e principalmente anotações de estudos. Pra me ajudar, e quem sabe, ajudar alguém!