O que é e pra que serve JSON?

Egon Hilgenstieler

JSON é um formato de dados simples e leve, amplamente utilizado para a troca de informações entre sistemas por ser fácil de ler, escrever e interpretar. Sua estrutura simples, baseada em texto, é compatível com diversas linguagens de programação, tornando-o uma escolha popular no desenvolvimento de aplicações modernas. Acompanhe este artigo e entenda como funciona a estrutura do JSON e onde ele é mais utilizado. Descubra como esse formato pode facilitar a integração entre sistemas e o desenvolvimento de projetos de forma prática.

Conteúdo

O que é o JSON e para que serve?

JSON ou JavaScript Object Notation é uma formatação usada para a estruturação de dados em formato de texto que permite a troca de informações de forma prática e otimizada. E apesar de ser um tipo de notação de objetos JavaScript, só passou a fazer parte desta linguagem após a versão 5 do ECMAScript.

O modelo .json é um dos formatos utilizados para estruturar informações trafegadas em transferências de dados entre aplicações realizadas por APIs (Application Programming Interface)

Além disso, é utilizado para a realização de requisições AJAX em sites em que são feitas diferentes interações com o banco de dados para realizar operações como consulta, inclusão e exclusão de registros, como o MySql.

Outra forma de utilização de arquivos .json é para o gerenciamento de projetos em diferentes linguagens de programação. O Node.js, por exemplo, utiliza um arquivo chamado package.json em seus projetos para armazenar as dependências utilizadas na aplicação.

Qual é a principal finalidade do JSON em programação?

Sua principal finalidade é a troca de dados entre sistemas e a representação de dados estruturados de forma leve e simples. Tornando a comunicação entre aplicações mais fácil, especialmente em contextos web e mobile.

Também é muito utilizado na programação de código API por acelerar a troca de dados e resultados de serviços web. Reduzindo a incompatibilidade de impedância entre objetos no código do aplicativo e suas representações seriadas. 

Como é a estrutura de um JSON?

Os dados contidos em um arquivo no formato JSON devem ser estruturados através de uma coleção de pares, com nome e valor, ou ser uma lista ordenada de valores. Desse modo, seus elementos devem conter:

  • Chave: é o identificador do conteúdo e, por isso, deve ser uma string delimitada por aspas;
  • Valor: é o conteúdo correspondente e pode conter os tipos de dados string, array, object, number, boolean ou null.

String

Uma string é uma sequência de zero ou mais caracteres Unicode, cercada por aspas duplas. Por exemplo:

"cidade": "Rio de Janeiro"

Neste caso, “Rio de Janeiro” é uma string por ser um conjunto de caracteres colocados entre aspas duplas.

Number

Em JSON, um número (Number) pode ser do tipo inteiro ou fracionado e não utiliza aspas, desde que indique um valor numérico válido, como:

"age": 40

Boolean

Os valores booleanos podem ser true (verdadeiro) ou false (falso) e não são colocados entre aspas: 

"solteiro": false


Neste exemplo, false é um valor booleano, indicando uma condição falsa sem o uso de aspas.

Null

Em JSON, null é usado para representar a ausência de valor ou informação para determinado assunto, e não é colocado entre aspas:

"telefone": null

Object

Um objeto é uma coleção de pares chave/valor, onde as chaves e os valores são separados por dois pontos e cada par é separado por vírgulas. Os objetos são cercados por chaves { }, como:

"carro": {"marca": "Toyota", "modelo": "Corolla"}

Aqui, “carro” é a chave, enquanto o valor é um objeto que contém as propriedades “marca” e “modelo”.

Array

Um array é uma coleção ordenada de valores, cercada por colchetes [ ] e com valores separados por vírgulas. 

Vejamos um exemplo com um array chamado “cidades”, contendo três objetos que representam diferentes cidades e seus respectivos países:

"cidades": [

  {"nome": "São Paulo", "país": "Brasil"},

  {"nome": "Lisboa", "país": "Portugal"},

  {"nome": "Tóquio", "país": "Japão"}

]

Exemplos de códigos JSON

Veja a seguir exemplos práticos de aplicação do JSON:

1. Gerar um objeto JSON a partir de dados gerados pelo usuário

Imagine que um usuário preencha um formulário com seu nome e email em um site. Esses dados podem ser transformados em um objeto JSON para processamento ou armazenamento temporário.

{

  "nome": "João Silva",

  "email": "joao.silva@email.com"

}


Esse JSON pode ser enviado para o servidor para ser processado, armazenado ou utilizado para outras ações.

2. Transferir dados entre sistemas

Para verificar um endereço, o JSON contendo o endereço do cliente é enviado para uma API de validação de endereços que vai retornar se o endereço é válido ou não.

{

  "endereco": {

    "rua": "Av. Paulista",

    "numero": "1000",

    "cidade": "São Paulo",

    "estado": "SP",

    "cep": "01310-100"

  }

}

3. Configurar dados de aplicações

Configurações de uma aplicação, como credenciais de banco de dados e caminhos de arquivos de log, podem ser armazenadas em um arquivo JSON, tornando o acesso mais fácil e organizado.

{

  "banco_de_dados": {

    "host": "localhost",

    "usuario": "admin",

    "senha": "123456",

    "nome_banco": "meu_banco"

  },

  "configuracao_log": {

    "caminho_arquivo": "/var/logs/meu_app.log"

  }

}

A aplicação lê este arquivo JSON para obter os dados necessários para se conectar ao banco de dados e ao arquivo de log.

4. Simplificar modelos de dados complexos

Um modelo de dados complexos, como um cadastro completo de um usuário com múltiplos endereços e contatos, pode ser simplificado em um arquivo JSON, permitindo uma estrutura mais clara e organizada.

{

  "usuario": {

    "id": 123,

    "nome": "Maria Oliveira",

    "enderecos": [

      {

        "tipo": "residencial",

        "rua": "Rua das Flores",

        "numero": "45",

        "cidade": "Rio de Janeiro",

        "estado": "RJ",

        "cep": "20000-000"

      },

      {

        "tipo": "comercial",

        "rua": "Av. Central",

        "numero": "1500",

        "cidade": "Rio de Janeiro",

        "estado": "RJ",

        "cep": "20000-010"

      }

    ],

    "contatos": [

      {

        "tipo": "telefone",

        "numero": "(21) 98765-4321"

      },

      {

        "tipo": "email",

        "email": "maria.oliveira@email.com"

      }

    ]

  }

}

Este exemplo de modelo complexo foi transformado em um formato de fácil leitura e manipulação com JSON.

Onde o JSON é mais utilizado?

É muito utilizado na comunicação entre servidores clientes em APIs RESTful, armazenamento de dados, configurações de aplicações, troca de dados entre sistemas e desenvolvimento de aplicações web.

Além disso, serializa e transmite dados estruturados, tornando seu uso comum em aplicativos móveis onde é preciso requisitar dados em um servidor e utilizá-los rapidamente na aplicação.

Também, como já mencionado, o JSON é muito utilizado em requisições AJAX para aplicações web e para resolver o problema de domínio cruzado. 

Como fazer um arquivo em JSON?

Para criar um arquivo em JSON, é preciso compreender como sua estrutura funciona e como os dados são estruturados. Em seguida, através de um editor de texto, você pode criar a estrutura desejada e salvar o arquivo em extensão .json. 

Confira mais detalhes destes passos abaixo:

1. Entenda a estrutura

Em primeiro lugar, é importante entender como funciona a estrutura do JSON, uma vez que essa formatação organiza os dados em pares chave-valor onde as chaves são strings e os valores podem ser strings, number, arrays, object, boolean ou null.

2. Escolha um editor de texto

Para criar o arquivo JSON, você precisará de um editor de texto. Existem várias opções disponíveis, como Notepad (Windows), TextEdit (Mac), ou editores de código como Visual Studio Code e Sublime Text.

3. Crie a estrutura

Abra o editor de texto escolhido e escreva a estrutura JSON. Certifique-se de seguir a sintaxe correta e incluir chaves e colchetes conforme necessário. 

4. Salve o arquivo

Após criar a estrutura JSON, você precisa salvar o arquivo:

  1. Vá até o menu do editor, clique em “Arquivo” e depois em “Salvar como”. 
  2. Depois, escolha o local onde deseja armazená-lo, dê um nome ao arquivo (por exemplo, livros.json) e certifique-se de que a extensão seja .json. 
  3. Clique em Salvar para concluir o processo.

Qual a diferença entre HTML e JSON?

O HTML (HyperText Markup Language) é uma linguagem de marcação baseada em tags usada para estruturar e apresentar conteúdos na web. 

Enquanto o JSON é um formato de troca de dados feito de estruturas de pares chave/valor que tem o objetivo de transmitir dados entre um servidor e um cliente (geralmente em aplicações web).

Qual a diferença entre JSON e XML?

Ambos são representações de dados utilizados na comunicação de dados entre sistemas e aplicações. Entretanto, o JSON é independente de qualquer linguagem de programação, além de ser uma saída de API muito comum em diversas aplicações. 

Já o XML é uma linguagem de marcação que disponibiliza regras para definir qualquer dado, usando tags para diferenciar atributos de dados e dados reais. 

Entre as principais diferenças temos:

Notação

A diferença inicial dos dois modelos é a maneira de realizar a notação dos dados. Como já dito, o JSON usa uma notação simples, enquanto o XML uma estrutura de tags personalizadas para representar os objetos. Além disso, elas devem conter o par, ou seja, a tag de abertura e a de fechamento.

Outra característica da notação XML, é que o seu conteúdo não precisa ser delimitado com aspas, como acontece com os textos no formato JSON. Nele, o que indica o início e o fim das informações são as tags de abertura e fechamento.

Tipos de dados

O formato XML suporta diferentes tipos de dados, como imagens e gráficos, o que não é possível transmitir no formato JSON, uma vez que ele apenas oferece suporte a números e textos. Em contrapartida, o XML não oferece suporte a arrays.

Codificação

A codificação representa as formas de conversão para o formato binário suportadas pelo modelo. O JSON utiliza o formato UTF-8, enquanto o XML oferece essa e outras opções. 

Importante frisar que o UTF-8 é o formato mais utilizado em sites na internet.

Facilidade de leitura e comentários

Os arquivos em formato JSON são fáceis de entender, já que a estrutura e notação são bem simples. Já o XML é mais estruturado e com a interpretação mais complexa. 

Outra diferença é com relação aos comentários no arquivo, que são permitidos apenas no modelo XML.

Quando usar JSON e quando devo usar XML?

Isso vai depender de cada projeto, é preciso analisar as requisições e exigências do aplicativo ou sistema para verificar qual opção vai produzir o melhor resultado.

Por exemplo, se o foco é desenvolver algo mais leve e rápido (especialmente na web), JSON é a escolha ideal, já que sua integração com JavaScript facilita o trabalho dos desenvolvedores. Além da sua legibilidade ser superior e permitir uma manipulação de dados mais simples e intuitiva.

Por outro lado, em sistemas que utilizam SOAP, o XML é que se destaca porque sua utilização é uma exigência. Sendo a melhor opção quando há uma maior complexidade de dados, necessidade de padronização na validação e transformações frequentes. Além disso, quando a categorização e identificação de dados são fundamentais, os metadados proporcionados pelo XML se tornam essenciais.

Qual a diferença entre JS e JSON?

O JavaScript (JS) é uma linguagem de programação interpretada usada para tornar as páginas web mais interativas, suportando variáveis, funções, objetos, arrays, condicionais, entre outros. Enquanto o JSON é um formato que facilita a leitura, escrita e a comunicação de dados estruturados, sem executar lógica ou funções. 

Assim, enquanto o JS cria a lógica das aplicações e manipula os dados no lado do cliente, o JSON faz a troca dos dados entre o cliente e o servidor. 

Quais as vantagens do JSON em relação a outras linguagens?

O JSON se destaca como o formato padrão para troca de informações entre sistemas web, especialmente em APIs. Sua simplicidade e legibilidade facilitam a comunicação entre aplicativos móveis e web, permitindo que ambos acessem os mesmos dados de forma eficiente. 

Além disso, a estrutura do JSON é fácil de entender e manipular, o que o torna acessível para desenvolvedores de diversas linguagens.

Outra vantagem significativa é seu uso como uma “linguagem de configuração”. Ele é amplamente utilizado para armazenar parâmetros e opções que configuram ou personalizam programas e aplicativos, seja em ambientes desktop, mobile ou servidores. 

Algumas das vantagens do JavaScript Object Notation:

  • Leitura mais simples;
  • Analisador (parsing) mais fácil;
  • Suporta objetos;
  • Velocidade maior na execução e transporte de dados;
  • Arquivo com tamanho reduzido.

Essa flexibilidade, aliada ao suporte universal em praticamente todas as linguagens de programação modernas, torna o JSON uma escolha popular no desenvolvimento de software.

Quais são os principais desafios ao trabalhar com JSON?

Os principais desafios incluem manipular dados aninhados de forma eficiente, garantir a segurança dos dados e a compatibilidade entre diferentes sistemas e linguagens de programação. Além disso, é preciso ter capacidade de gerenciar e lidar com grande quantidade de dados.  

Simplifique sua gestão de documentos fiscais com a Focus NFe

Somos um ecossistema de soluções para a emissão e gestão de documentos fiscais. Nossas APIs utilizam o formato JSON, o que facilita a integração e a gestão fiscal, permitindo que empresas de todos os tamanhos e setores economizem tempo e orientem seus esforços no que realmente importa.

Sua empresa tem desenvolvedores e um sistema interno, e deseja otimizar a emissão de notas fiscais? Conheça nosso conjunto de APIs e tenha acesso a uma solução ágil e eficiente!

Converse já com a nossa equipe: Solicite Contato Aqui!

Picture of Egon Hilgenstieler

Egon Hilgenstieler

CTO e cofundador do Focus NFe, desenvolvedor, professor de yoga e praticante de meditação. Enquanto não está programando, procura a resposta para a vida, para o universo e para tudo mais.

Inscreva-se em nossa newsletter​

Receba nossos conteúdos exclusivos em primeira mão.

Explore outros conteúdos:

O que é NFE
Documentos fiscais
Luciano Romaniecki

O que é NF-e, quais são os tipos e como emitir?

O que é uma NF-e? De forma simples, é o documento responsável pelo registro de transações de compra e venda em negócios de todos os portes. Sua emissão é essencial para a comprovação de que a transação comercial realmente aconteceu, perante consumidores e órgãos de fiscalização.

Independente do tamanho da sua empresa, ou se está abrindo um negócio agora, provavelmente você terá que emitir uma Nota Fiscal eletrônica durante sua vida comercial. Por isso, é importante que você saiba do que se trata esse documento.

Veja a seguir o que é uma NF-e, como emiti-la, quais são os tipos e algumas dúvidas sobre esse documento e seu uso.

Leia mais »
Homem sentado em uma escrivaninha, com um notebook olhando para um planilha.
Documentos fiscais
Ricardo Acras

Como emitir Nota Fiscal de Serviço Eletrônica (NFSe)?

Criada para reduzir burocracia, a Nota Fiscal de Serviço Eletrônica permite que todo o seu processo de emissão seja feito de forma digital. Utilizada estritamente para registrar operações de prestação de serviços, a NFSe facilita a emissão de notas fiscais e otimiza o processo de gestão tributária.

Com as mudanças ocorridas quanto à forma de emissão, é natural surgirem dúvidas de como gerar este documento. Além disso, a procura por métodos simples de emissão também é uma grande preocupação de diversos prestadores de serviço e empresas espalhadas pelo Brasil.

Confira no post de hoje: como emitir Nota Fiscal de Serviço Eletrônica (NFSe), quais são os sistemas emissores e configurações necessárias.

Leia mais »
Contabilidade
Douglas Pinheiro

Credenciamento Sefaz: como fazer e consultar CNPJ?

O credenciamento na Sefaz é um processo essencial para empresas que desejam emitir notas fiscais eletrônicas. Somente com a autorização deste órgão é que um estabelecimento pode realizar a emissão de documentos indispensáveis para transações comerciais.

Neste artigo, explicamos como funciona o credenciamento, quem pode se cadastrar, como consultar se sua empresa está habilitada e o que fazer caso seu CNPJ não esteja credenciado.

Leia mais »