lunes, 10 de junio de 2019

Lenguajes de intercambio

¿Qué es un lenguaje de intercambio?

Un lenguaje de intercambio es un formato para el intercambio de datos entre aplicaciones informáticas de manera que no necesitan estar codificados en el mismo lenguaje de programación o instalados en un mismo sistema operativo, pero su uso va más allá.

¿Cuándo surgieron?

Surgen en los inicios de los años 90 cuando la proliferación de aplicaciones empezó a mostrar un alarmante problema a futuro que sería: "¿Cómo hacer que dos aplicaciones puedan comunicarse entre ellas si se encuentran codificadas en diferentes lenguajes de programación?"

¿Qué beneficios traen?

Transmitir información entre un programa realizado en JAVA y otro en PHP se podría realizar almacenando los datos en una base de datos mediante el primer programa y el segundo lea la base de datos, pero que pasaría si una de las aplicaciones no pudiera tener acceso a la base de datos y se requiere que la aplicación en JAVA reciba los datos desde la aplicación en PHP. Este caso se da cuando construimos aplicaciones móviles para Android, este si bien puede manejar su propia base de datos como un SQLite, no podría leer directamente datos desde un servidor MySQL, mientras que la aplicación en PHP si puede hacerlo y enviarle la información al programa en JAVA, y para que ambos entiendan la información a enviar es que se aprovecha un lenguaje de intercambio mediante Web Services.

¿Cuáles son los más usados?

Actualmente tenemos tres: XML, Json y YAML, XML es un lenguaje de marcado formal, mientras que Json y YAML son formatos inspirados en la sintaxis humana más que la de las computadoras utilizando texto plano en su totalidad, todos tienen sus ventajas y desventajas y están deben ser analizadas por los proveedores de Web Services y API Rest o SOAP para elegir el más conveniente

XML (Extensible Markup Language)

Inicialmente apareció el XML, un tipo de lenguaje de marcado como el HTML que mediante etiquetas permitía estandarizar la forma de intercambiar datos entre aplicaciones.

Por ejemplo si queremos transmitir la siguiente información: un usuario llamado Jhon que posee un correo que es jhon@mail.com y un número de teléfono que es 999999999 mediante XML, haríamos lo siguiente:

<persona>
   <nombre>Jhon</nombre>
   <contacto>
      <correo>jhon@mail.com</correo>
      <telefono>999999999</telefono>
   </contacto>
</persona>

Podemos identificar que existe una etiqueta llamada persona que contiene como atributos un nombre y un contacto, este contacto a la vez contiene información sobre un correo y un teléfono.


Json (JavaScript Object Notation)

Inicialmente apareció el XML, un tipo de lenguaje de marcado que nació de la notación en texto plano de los objetos de JavaScript, posee una simpleza que lo hizo muy popular e incluso uno de los responsables que el lenguaje de marcado HTML sobreviviera hasta nuestros días frente a la que iba ser su evolución (XHTML).

Por ejemplo si queremos transmitir la siguiente información: un usuario llamado Jhon que posee un correo que es jhon@mail.com y un número de teléfono que es 999999999 mediante Json, haríamos lo siguiente:

{
   "persona"{
      "nombre" : "Jhon"
      "contacto"{
         "correo" : "jhon@mail.com"
         "telefono" : "999999999"
      }
   }
}

Podemos identificar que existe una campo llamado persona que contiene como atributos un nombre y un contacto, este contacto a la vez contiene información sobre un correo y un teléfono, todos escritos como texto plano entre comillas dobles.

YAML(Ain't Markup Language)

Su traducción significa: "no es un lenguaje de marcado", aunque en su concepción se le trató y llamó como un lenguaje de marcado al igual que XML, actualmente se hace una distinción entre los lenguajes de marcado y los formatos para intercambio de datos como YAML o Json considerándolos como lenguajes de "marcado ligero".

Por ejemplo si queremos transmitir la siguiente información: un usuario llamado Jhon que posee un correo que es jhon@mail.com y un número de teléfono que es 999999999 mediante Yaml, haríamos lo siguiente:

---
   persona
     -nombre: Jhon
      contacto:
         -correo :jhon@mail.com
          telefono :999999999

Podemos identificar que existe una etiqueta llamada persona que contiene como atributos un nombre y un contacto, este contacto a la vez contiene información sobre un correo y un teléfono.




No hay comentarios:

Publicar un comentario

Ejercicio con PseInt usando funciones

Las funciones dentro de PseInt se pueden crear mediante la palabra reservada SubProceso, SubAlgortimo o Función. Esto dependerá del estilo d...