Con el creciente desarrollo de Internet en los últimos tiempos debido a los dispositivos móviles, hemos asistido a una revolución en la manera de intercambiar datos. La mayoría de servicios nacieron para ser consultados desde un navegador web, pero se tuvieron que ir adaptando para poder hacer aplicaciones nativas, que permiten un mayor y mejor uso de los mismos. En estos casos la mayoría de las empresas decidió que la manera más sencilla de proveer a esas aplicaciones de datos, sería mediante una API.
En un principio la forma de comunicar datos entre dos aplicaciones fue XML, un lenguaje de marcado (similar a HTML). Pero su sintaxis es poco clara y en muchos casos tiende a generar ficheros con mucha sintaxis para la información real que queremos transmitir. Para sustituir a XML el formato que mejor se ha posicionado es JSON.
JSON es un formato mucho más claro, con mucha menor sintaxis al no utilizar etiquetas para indicar cada contenido y esta basado en un sistema similar a los diccionarios (relación clave-valor). Este formato ha sido elegido por la mayoría de las APIs y desarrollos en los últimos años y actualmente XML se está quedando relegado a aplicación antiguas.
Por ejemplo estar sería la manera de mandar la información de una persona:
{ "padre": "Juan", "madre": "Maria", "edad": 40, "hijos" : [ { "nombre": "Pedro", "edad": 22 }, { "nombre": "Marta", "edad": 23 } ] }
Visualmente lo podríamos ver así:
Si quisiéramos realizar lo mismo en XML esta sería la forma:
<?xml version="1.0" encoding="UTF-8" ?> <padre>Juan</padre> <madre>Maria</madre> <edad>40</edad> <hijos> <nombre>Pedro</nombre> <edad>22</edad> </hijos> <hijos> <nombre>Marta</nombre> <edad>23</edad> </hijos>
Como podéis ver en la manera de tratar los arrays en XML, se añade cada vez la etiqueta, comprobando como comentábamos al principio que este formato tiene una mayor carga de sintaxis que JSON. Esto además hace que la cantidad de bytes que ocupe la respuesta sea mayor.
En un caso real, la respuesta en formato JSON no sería como el primer ejemplo debido a que de esa manera ocupa mucho espacio, así que lo que se suele hacer es “comprimir” esa respuesta (básicamente quitando los espacios en blanco y los saltos de línea).
{"padre":"Juan","madre":"Maria","edad":40,"hijos":[{"nombre":"Pedro","edad":22},{"nombre":"Marta","edad":23}]}
Para una aplicación es igual ver el JSON extendido como en el primer caso, que verlo comprimido como en el ejemplo superior, ya que el uso de espacios e identación solo se hace por motivos de legibilidad para los usuarios/desarrolladores.
Hoy queremos hablaros de Docker un proyecto que cada día es más usado, porque permite…
Cada vez estamos más acostumbrados a usar código para generar la infraestructura (IaC), documentar nuestro…
Uno de los problemas que se presentan con una mayor frecuencia hoy en día, es…
Uno de los problemas que solemos tener los programadores, es que nos gusta estar a…
Docker es una de las herramientas más usadas por los desarrolladores, sin embargo, usarlo en…
Como seguramente sabrás el uso de JavaScript ha crecido exponencialmente en los últimos tiempos, sin…