La materia prima de cualquier proyecto, sea este una aplicación, un sistema, una página web o una base de datos, es la información. Almacenar, modificar y transferir la información es una parte fundamental de nuestro trabajo como desarrolladores de software.
Por esta razón es importante que adquiramos conocimiento sobre XML y JSON. Comprender su funcionamiento y conocer sus características básicas servirá para que hagamos una elección acertada cuando sea necesario.
Es un lenguaje de marcación o marcado. Es decir, sirve para indicar, con el uso de ciertos marcadores, qué es cada uno de los elementos que componen determinado archivo.
Se trata de uno de los lenguajes más utilizados para transferir información entre sistemas. Aunque en un principio puede parecernos muy sencillo, es valioso conocer que hay cosas más complejas detrás de él.
XML (extensible markup language) no es un lenguaje de programación, puesto que no podemos hacer programas o aplicaciones empleando su sintaxis.
El lenguaje de marcado simplemente usa tags o etiquetas para organizar datos que luego serán interpretados por los sistemas que los requieran.
Entre las características más relevantes de XML están:
Los usos de XML son:
JSON o JavaScript Object Notation es un formato de datos sirve para, entre otras cosas, establecer comunicación entre APIS o entre distintas partes de nuestros proyectos web que pueden estar codificadas en lenguajes de programación diferentes.
Este formato ha ido ganando popularidad desde su aparición en el año 2001. Está basado en JavaScript y en la forma en la que este lenguaje de programación representa sus objetos.
En JSON se puede establecer una especie de paridad entre nombres y valores que permite definir objetos y listas de valores ordenados que permiten manejar arreglos.
Entre las características de JSON tenemos:
Entre los usos que tiene JSON:
Aunque puede hacerse una comparación entre las ventajas que puede representar el uso de XML o de JSON, lo cierto es que la elección de uno u otro dependerá del proyecto que pensemos desarrollar y de la experiencia que vayamos adquiriendo en nuestro desempeño como programadores.