servicios web

32
Servicios Web Joan Sebastián Ramírez Pérez 2017

Upload: joan-sebastian-ramirez-perez

Post on 11-Apr-2017

31 views

Category:

Software


0 download

TRANSCRIPT

Page 1: Servicios web

Servicios WebJoan Sebastián Ramírez Pérez

2017

Page 2: Servicios web

AgendaAPISOA¿Qué es un Servicio Web?¿Por qué usar servicios Web?SOAPRESTBibliografía

Page 3: Servicios web

API

Page 4: Servicios web

Application Programming Interface

(API)Procesos, funciones y métodos que brinda una biblioteca de programación a modo de capa de abstracción para que sea empleada por otro programa informático.Conjunto de reglas (código) y especificaciones que las aplicaciones pueden seguir para comunicarse entre ellas.Una de las claves del funcionamiento de las API es la facilidad de integración.

Page 5: Servicios web

SOA

Page 6: Servicios web

SOA

Arquitectura Orientada a ServiciosParadigma de arquitectura que permite diseñar software basado en la composición de aplicaciones independientes.Creación de sistemas de información altamente escalables.

Page 7: Servicios web

Arquitectura Orientada a Servicios

Una aproximación para construir sistemas usando servicios los cuales se adhieren a 4 pilares:Los limites son explícitosLos servicios son autónomosLos servicios comparten esquemas y contratos, no clasesLa compatibilidad de los servicios, se determina basados en las políticas

Page 8: Servicios web

Beneficios de la Arquitectura Orientada a

ServiciosProveer servicios a los consumidores vía interfaces estándares, publicadas y de fácil ubicación

Soluciones basadas en protocolos estándares no en productos

Eleva el nivel de abstracción para reutilización del código

Solventando problemas de heterogeneidadProvee de un modelo claro para integrar sistemas de software

Dentro de a empresaMas allá de las fronteras organizacionales

Provee de la bases para aplicaciones conectadas de clase mundial

El valor de negocio de las aplicaciones aisladas es limitado

Page 9: Servicios web

¿Qué es un Servicio Web?

Page 10: Servicios web

Servicios WebTecnología que permite que las aplicaciones se comuniquen en una forma que no depende de la plataforma ni del lenguaje de programación. Un servicio web es una interfaz que describe un conjunto de operaciones a las cuales se puede acceder por la red a través de mensajería estandarizada.

Page 11: Servicios web

¿Por qué usar Servicios Web?

Page 12: Servicios web

¿Por qué usar Servicios Web?

Reuso del códigoInteroperabilidad con otros sistemasPosibilidad de usar microservicios como arquietctura

Page 13: Servicios web

SOAP

Page 14: Servicios web

XML

Extensible Markup Language.Lenguaje que permite definir lenguajes de marcas o tags desarrollado por World Wide Web Consortium (W3C).Se usa para almacenar datos en forma legible

Page 15: Servicios web
Page 16: Servicios web

SOAPSimple Object Access ProtocolFormato de mensaje XML utilizado en interacciones de servicios web. Los mensajes SOAP habitualmente se envían sobre HTTP o JMS, pero se pueden utilizar otros protocolos.Protocolo que te permite la comunicación entre aplicaciones a través de mensajes por medio de Internet, independiente de la plataforma y el lenguaje.

Page 17: Servicios web

WSDL

Page 18: Servicios web

WSDLWeb Services Description Language.Notación XML para describir un servicio webEl uso de SOAP en un servicio web específico se describe mediante la definición WSDL.Una definición WSDL indica a un cliente cómo componer una solicitud de servicio web y describe la interfaz que proporciona el proveedor del servicio web.

Page 19: Servicios web
Page 20: Servicios web

XSDEs un mecanismo para comprobar la validez de un documento XML, es decir, definir su estructura: qué elementos, qué tipos de datos, que atributos, en qué orden, cuántas veces se repiten, etc. Se compone de las etiquetas:

xmlns:xsi para declarar el espacio de nombres del esquema XSD.xsi:noNamespaceSchemaLocation para vincular el documento XML con el esquema local XSD.xs:element <xs:element name="nombre" type="xs:string" default="TicArte" minOccurs="1" maxOccurs="unbounded" />xs:attribute <xs:attribute name="moneda" type="xs:string" default="euro" use="required" />

Page 21: Servicios web
Page 22: Servicios web

NamespacesLos espacios de nombres (namespaces) son uno de los pilares de XMLMedio para organizar clases dentro de un entorno, agrupándolas de un modo más lógico y jerárquicoPermiten eliminar las ambigüedades y solucionar los problemas de homonimia que se producen en los documentos, ya que en un mismo documento existen palabras con el mismo nombre, pero con diferentes significados y espacios semánticos.

Page 23: Servicios web

REST

Page 24: Servicios web

JSONJavaScript Object NotationFormato de texto ligero para el intercambio de datosEstá constituído por dos estructuras:

Una colección de pares de nombre/valor. En varios lenguajes esto es conocido como un objeto, registro, estructura, diccionario, tabla hash, lista de claves o un arreglo asociativo.Una lista ordenada de valores. En la mayoría de los lenguajes, esto se implementa como arreglos, vectores, listas o secuencias.

Page 25: Servicios web

Métodos estándar HTTP

GET: Para consultar y leer recursosPOST: Para crear recursosPUT: Para editar recursosDELETE: Para eliminar recursos.

Page 26: Servicios web

RESTRepresentational State TransferTipo de arquitectura de desarrollo web que se apoya totalmente en el estándar HTTP.Más simple y convencional que otras alternativas como SOAP y XML-RPC.Nunca se debe guardar estado en el servidor, toda la información que se requiere para mostrar la información que se solicita debe estar en la consulta por parte del cliente.

Page 27: Servicios web

RESTLeonard Richardson, padre de la arquitectura orientada a recursos, define tres niveles de calidad para usar REST:

Uso correcto de URIsUso correcto de HTTP.Implementar Hypermedia (conectar mediante vínculos las aplicaciones clientes con las APIs).

Page 28: Servicios web
Page 29: Servicios web

RESTFUL

Hace referencia a un servicio web que implementa la arquitectura REST.

Page 30: Servicios web
Page 31: Servicios web

Bibliografía

Page 32: Servicios web

Bibliografíahttp://www.ibm.com/developerworks/ssa/webservices/newto/service.htmlVallecillo, Antonio. El Futuro de los Servicios Web. Universidad de MálagaNaranjo, Julio. Arquitectura Basada en Servicios, Microsoft.Álvarez, José Mauricio. EL Valor de Negocio de Arquitecturas Orientadas a Servicios. Microsoft.NET Architecture Center: Service Oriented Architecture http://msdn.microsoft.com/architecture/soa/ Understanding Service-Oriented Architecture http://msdn.microsoft.com/architecture/soa/default.aspx?pull=/library/en-us/dnmaj/html/aj1soa.asp Patterns & Practices http://www.microsoft.com/resources/practices FTPOnline: SPECIAL REPORT: Service-Oriented Architecture http://www.ftponline.com/special/soa/