domingo, 19 de octubre de 2025

Python for Everybody (Py4E) Seccion 13 Servicios Web.

Resumen realizado por Gemini. 

Aquí tienes un resumen del documento "Pythonlearn-13-WebServices.pptx":


El documento "Pythonlearn-13-WebServices.pptx" se centra en el uso de servicios web y el intercambio de datos entre programas a través de la red, destacando dos formatos comunes: XML y JSON.

Conceptos Clave:
  • Datos en la Web: Con la comprensión de las solicitudes y respuestas HTTP, surgió la necesidad de intercambiar datos entre programas utilizando estos protocolos. Se acordaron formatos para representar los datos que se envían entre aplicaciones y a través de redes.
  • Protocolo "Wire": Se refiere al formato en que se envían los datos a través de la red. Diferentes lenguajes de programación (PHP, JavaScript, Java, Python) tienen sus propias estructuras de datos (Array, Object, HashMap, Dictionary) que necesitan ser serializadas y deserializadas para el intercambio.
  • XML (eXtensible Markup Language):
    • Es un lenguaje de marcado para enviar datos a través de la red.
    • Su propósito principal es ayudar a los sistemas de información a compartir datos estructurados.
    • Comenzó como un subconjunto simplificado del Standard Generalized Markup Language (SGML) y está diseñado para ser relativamente legible por humanos.
    • Elementos XML: Pueden ser simples o complejos, y se organizan en una estructura de árbol.
    • Conceptos básicos de XML: Incluyen etiquetas de inicio y fin, contenido de texto, atributos y etiquetas de cierre automático.
    • Espacios en blanco: Generalmente se descartan en los elementos de texto; la indentación se usa solo para mejorar la legibilidad.
    • Terminología XML:
      • Etiquetas: Indican el principio y el final de los elementos.
      • Atributos: Pares clave/valor en la etiqueta de apertura de XML.
      • Serializar / Deserializar: Convertir datos de un programa a un formato común que pueda ser almacenado y/o transmitido entre sistemas de manera independiente del lenguaje de programación.
  • Esquema XML (XML Schema):
    • Describe un "contrato" sobre qué XML es aceptable.
    • Define el formato legal de un documento XML en términos de restricciones sobre la estructura y el contenido.
    • Se utiliza para especificar un "contrato" entre sistemas, donde un sistema solo aceptará XML que cumpla con un esquema particular.
    • Si un XML cumple con la especificación del esquema, se dice que "valida".
    • Existen varios lenguajes de esquema XML, como Document Type Definition (DTD), Standard Generalized Markup Language (SGML) y XML Schema de W3C (XSD).
    • XSD (XML Schema Definition): Es la versión del World Wide Web Consortium (W3C), comúnmente llamada XSD porque los nombres de archivo terminan en .xsd.
    • Estructura XSD: Incluye elementos
      xs:element
      ,
      xs:sequence
      y
      xs:complexType
    .
    • Restricciones XSD: Permiten definir la ocurrencia mínima y máxima de elementos.
    • Tipos de datos XSD: Incluyen
      xs:string
      ,
      xs:date
      ,
      xs:dateTime
      ,
      xs:decimal
      y
      xs:integer
      . Es común representar la hora en UTC/GMT.
    • Formato de Fecha/Hora ISO 8601: Un formato estándar para representar fecha y hora, incluyendo año-mes-día, hora del día y zona horaria (típicamente UTC/GMT).
  • JSON (JavaScript Object Notation):
    • Representa datos como "listas" y "diccionarios" anidados.
    • Es un formato ligero para el intercambio de datos.
  • Enfoque Orientado a Servicios (Service Oriented Approach):
    • Permite que una aplicación se divida en partes y se distribuya a través de una red.
    • Las aplicaciones web no triviales utilizan servicios de otras aplicaciones (por ejemplo, cargos de tarjetas de crédito, sistemas de reserva de hoteles).
    • Los servicios publican las "reglas" que las aplicaciones deben seguir para utilizar el servicio (API).
  • APIs (Application Program Interfaces):
    • Son contratos para la interacción entre aplicaciones.
    • Existen muchas APIs públicas, algunas gratuitas hasta cierto límite de uso y otras de pago.
    • El documento menciona un ejemplo de API de geocodificación basada en datos de OpenStreetMap.
  • Ejemplos de código en Python: El documento incluye ejemplos de cómo procesar XML utilizando el módulo
    xml.etree.ElementTree
    y cómo trabajar con JSON utilizando el módulo
    json
. También se muestra un ejemplo de cómo interactuar con una API de geocodificación.

En resumen, el documento explora cómo las aplicaciones web intercambian datos a través de la red utilizando formatos como XML y JSON, y cómo se definen las interacciones a través de APIs en un enfoque orientado a servicios.

No hay comentarios.:

Publicar un comentario

Entradas recientes

Thinkcspy 7.7 Condicionales encadenados

  7.7.  Condicionales encadenados  Python proporciona una forma alternativa de escribir selecciones anidadas como la que se muestra en la se...

Entradas Populares