Olá, tudo bem?
Queria saber apenas se o JSON simula uma API ou se ele é apenas um banco de informações mesmo. Obrigado :)
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá, tudo bem?
Queria saber apenas se o JSON simula uma API ou se ele é apenas um banco de informações mesmo. Obrigado :)
Olá, Rian!
Na realidade, não é um nem outro, mas o Json pode ser combinados em ambos, vamos em frente!
O JSON (JavaScript Object Notation) é um formato de dados muito usado para intercâmbio(troca) de dados entre um servidor e um cliente. Ele não simula uma API, mas é muito utilizado como o formato de dados em APIs, e consequentemente quando APIs são simuladas esses dados também são.
Em outro momento da história tínhamos e temos até hoje o XML, segue um exemplo de arquivo XML:
<?xml version="1.0"?>
<CAT>
<NAME>Izzy</NAME>
<BREED>Siamese</BREED>
<AGE>6</AGE>
<ALTERED>yes</ALTERED>
<DECLAWED>no</DECLAWED>
<LICENSE>Izz138bod</LICENSE>
<OWNER>Colin Wilcox</OWNER>
</CAT>
O JSON passou a ser mais popular que XML devido à sua simplicidade, eficiência e ampla adoção na web.
Já o JSON Server, que você está instalando, é uma ferramenta que permite criar uma API fake rapidamente. Ele usa um arquivo JSON, como o videos.json mencionado na aula, para simular uma API completa com endpoints e métodos HTTP (GET, POST, etc.).
Então, resumindo: o JSON é um formato de dados, e o 'JSON Server" é uma ferramenta que usa um arquivo JSON para simular uma API.
Por exemplo, quando você executa o comando $ json-server --watch backend/videos.json, você está dizendo para o JSON Server criar uma API fake baseada no arquivo videos.json. Quando você acessa http://localhost:3000/videos no seu navegador, você está acessando um endpoint dessa API fake, que retorna os dados contidos no arquivo videos.json.
A título de curiosidade, deixo um artigo interessante sobre:
Espero ter colaborado para o seu aprendizado sobre o JSON, lembre-se de que pode sempre contar com o fórum da comunidade Alura em caso de dúvidas. Bons estudos!
Sucesso ✨
Um grande abraço e até mais!
então seria assim?
JSON Server que simula a API e cria uma API REST
JSON é apenas um formato de dados que faz a troca entre o servidor e o cliente
Eu pensava que ambos se conectavam e por esse motivo o JSON também simularia uma API, mas são coisas diferentes? tem como eu usar o JSON Server com o XML? ou posso utilizar apenas com o JSON?
Uma última coisa pra ver se eu entendi... Eu consigo usar o JSON sem o JSON Server, certo? apenas armazenando dados dentro dele e manipulando no JS. Por esse motivo que eles são diferentes? o JSON Server é um servidor criado para ter uma API REST dos dados do JSON? Seria isso?
Olá Rian!
Ótimas dúvidas, percebo sua curiosidade e vontade de aprender, isso é muito legal. Continue sempre assim!
Quanto as dúvidas, vamos por partes:
1 - JSON Server que simula a API e cria uma API REST: Isso mesmo, o Json server, tem essa funcionalidade, ele apenas simula uma API localmente, ele só vai funcionar na sua máquina.
2 - JSON é apenas um formato de dados que faz a troca entre o servidor e o cliente: Exatamente JSON é um formato de dados. Ele permite a troca de informações estruturadas de forma eficiente, facilitando a integração entre sistemas e aplicativos. Além disso, o JSON suporta diferentes tipos de dados, como strings, números, objetos e arrays, tornando-o uma escolha versátil para transmitir informações. O JSON é amplamente adotado em APIs e serviços web para facilitar a comunicação e o compartilhamento de dados de forma eficaz.
Outros pontos e recapitulando:
O Json server depende de um arquivo Json para que funcione e não o contrário. Cuidado para não confundir os nomes, o Json server não passa de uma pequena ferramenta para testes, utilizando um arquivo do tipo json, outro ponto é não tem como utilizar o Json Server com um arquivo XML, eles são diferentes, o que você pode fazer é adaptar o dado do tipo XML para Json, isso não é muito trabalhoso, com a ajuda de alguns sites e IA, isso se tornou mais fácil.
Outro ponto é que, o JSON não depende do JSON SERVER. Na verdade, quando você está usando qualquer coisa que tenha uma API, como um site, aplicativo e assim por diante, com certeza está ocorrendo uma troca de JSON e não está partindo da ferramenta Json Server. O JSON server é utilizado apenas por nós desenvolvedores, mas é apenas para fins de teste ou utilizar em nossos projetos, pois implantar uma API é mais complexo e muitas vezes custoso. Portanto, usamos o JSON server para facilitar e realizar alguns testes.
Por fim pense no Json server como uma sala de ensaio para uma peça de teatro. Os atores (desenvolvedores) usam essa sala para praticar suas falas e ensaiar as cenas antes da grande estreia. Eles podem corrigir erros, ajustar a performance e se preparar para o show real. Enquanto isso, o público (usuários finais) assiste à peça (troca de dados em um site ou aplicativo) sem perceber que os bastidores foram cuidadosamente preparados na sala de ensaio, esse ponto é importante para separar ambos, um é uma ferramenta de testes(Json Server) e outro é um tipo de dado(Json).
Espero ter ajudado. Ficou com alguma dúvida? Pode mandar aqui, é um prazer responder a você.
Achei incrível a sua explicação e comparação, consegui entender muito bem! muito obrigado mesmo :)