viernes, 6 de septiembre de 2019

Aprendizaje Obtenido

Al realizar esta actividad, estuve investigando acerca de los temas, que por completo desconocía, ahora tengo un poco más de noción de acerca de lo que veremos en este curso. Ahora ya sé que es un servicio web, que es un conjunto de aplicaciones o procedimientos, los cuales se llaman desde cualquier parte de internet, pero para esto debe existir una invocación, en los servicios web se puede trabajar o hacer peticiones muy independientemente de la plataforma o del lenguaje de programación con el cual fue desarrollado. 
 De cierta forma algunos servicios web van relacionados con otros como por ejemplo el SOAP que utiliza mensajes XML para que puedan comunicarse, ya que el XML define la arquitectura y el formato de los mensajes. 
Algo que también me interesó mucho fue a cerca de las Apis, que son las interfaces de programación de las aplicaciones, anteriormente no sabía que sitios como Facebook, google maps, youtube, entre otras más las implementaban. Estas Apis permiten que sus servicios se puedan comunicar con otros. 

jueves, 5 de septiembre de 2019

Servicio Web REST

REST por sus siglas en ingles, REpresentational State Transfer, que en español significa Transferencia de estado representacional, es un estilo arquitectónico para desarrollar servicios web.

Es popular debido a su simplicidad y al hecho que se basa en los sistemas y características existentes de internet, protocolo de transferencia de hipertexto (HTTP), para lograr sus objetivos, en lugar de crear nuevos estándares, marcos y tecnologías.


En el estilo arquitectónico REST, los datos y la funcionalidad se consideran recursos y se accede a ellos mediante identificadores uniformes de recursos (URI), normalmente enlaces en la Web. 

Se actúa sobre los recursos mediante el uso de un conjunto de operaciones simples y bien definidas. El estilo arquitectónico REST, restringe una arquitectura a una arquitectura cliente / servidor y está diseñado para usar un protocolo de comunicación sin estado, típicamente HTTP. 

En el estilo de arquitectura REST, los clientes y servidores intercambian representaciones de recursos mediante el uso de una interfaz y protocolo estandarizados.

1. Consumo de un Api Rest
Consumir una Api significa usarla en la aplicación.
Por ejemplo GET solicita que https://someapi/Users dará todos los usuarios.

Debe solicitar esta URL https://someapi/Users obtener todos los usuarios y luego puede usarla en su aplicación.

Consumir una API significa básicamente usar cualquier parte de ella desde su aplicación.

2. Ejemplos de servicios Api Rest que se pueden consumir
Facebook (API GRAPHIC Y MARKETING)

Facebook lanzó la primera versión de su API Graph en abril de 2010. La versión más reciente, al momento de escribir este artículo, es la 2.6, la cual se introdujo el 12 de abril de 2016. Es una API de bajo nivel de base HTTP que puede ser usada para preguntar por data, crear posts y hasta crear campañas publicitarias automatizadas.

Twitter
La API de Twitter fue lanzada en septiembre de 2006. Es una API pública REST que provee acceso leído y escrito a la data de Twitter. La autenticación se realiza usando OAuth. Las respuestas son en formato JSON.
Twitter tiene una herramienta de consola API impulsada por apigee, que puede ser usada para probar las peticiones en el buscador.

Instagram
La API de Instagram fue lanzada en abril de 2014 y permite construir aplicaciones que analizan los posts de los usuarios y los ayuda a manejar sus propios posts. La API de Instagram es una API basada en REST.

Comparto este vídeo que me parece muy importante a cerca de como consumir un Api Rest:
https://www.youtube.com/watch?v=nYULAk6A9TY&t=63s


Frameworks para desarrollar aplicaciones web basadas en servicios

1. Material UI


Es un framework que comprende componentes React para implementar el diseño de Material de Google. Este marco CSS es robusto y confiable.

2. ASP.NET

Es un marco desarrollado por Microsoft, que nos ayuda a crear aplicaciones web robustas para PC, así como dispositivos móviles.
Con ASP.net, el desarrollo de aplicaciones web para aplicaciones robustas de escritorio y móviles es mas facil.. Funciona con el protocolo HTTP mientras que también optimiza los comandos HTTP. Es un marco CLR que utiliza las mejores tecnologías de desarrollo web.
Lenguaje C#.




3 Angular

Otro framework que también se puede utilizar es angular, el cual como ya lo mencioné es un framework para aplicaciones web desarrollado en TypeScript, de código abierto, mantenido por Google, se utiliza para crear y mantener aplicaciones web de una sola página. Su objetivo es aumentar las aplicaciones basadas en navegador con capacidad de Modelo Vista Controlador (MVC), en un esfuerzo para hacer que el desarrollo y las pruebas sean más fáciles.










Referencias

Rouse, M.(2014).TechTarget. REST(REpresentational State Transfer). Consultado el 5 de septiembre de 2019. Recuperado de: https://searchapparchitecture.techtarget.com/definition/REST-REpresentational-State-Transfer

GeeksForGeeks. Top 10 Frameworks for Web Applications. Consultado el 5 de septiembre de 2019. Recuperado de: https://www.geeksforgeeks.org/top-10-frameworks-for-web-applications/

Bose, D. (2019). Urban UI. 10 Top Material Desing Frameworks for 2019. Consultado el 5 de septiembre de 2019. Recuperado de: https://www.urbanui.com/material-design-frameworks/


Servicio Web WSDL

WSDL significa Lenguaje de Descripción de Servicios Web, es un formato estándar para para describir servicios web. Fue desarrollado por Microsoft en conjunto con IBM. WSDL se usa en combinación con SOAP y XML Schema para proporcionar servicios web a través de internet.
Un programa cliente que se conecta a un servicio web puede leer el WSDL para determinar que funciones están disponibles en servidor.


Cualquier tipo de datos especial utilizado se incrusta en el archivo WSDL en forma de esquema XML. El cliente puede usar SOAP para llamar realmente a una de las funciones enumeradas en el WSDL


Características de WSDL

-Es un protocolo basado en XML, para el intercambio de información en entornos descentralizados y distribuidos.

-Es una parte integral de Universal Description, Discovery, and Integration (UDDI), un registro de negocios mundial basado en XML.

Tutorialspoint. WSDL Introduction. Consultado el 5 de septiembre de 2019. Recuperado de: https://www.tutorialspoint.com/wsdl/wsdl_introduction.htm












Servicio Web SOAP

SOAP se conoce como protocolo simple de acceso a objetos, es un protocolo basado en XML para acceder a servicios web a través de HTTP. El servicio web SOAP es una definición de como los servidores web se comunican entre si o con las aplicaciones del cliente que los invocan. SOAP se desarrollo como un lenguaje intermedio para que las aplicaciones que han sido desarrolladas en distintos lenguajes de programación se puedan comunicar de una manera fácil entre si, para si evitar el esfuerzo extremo de desarrollo.



Para conocer mas: https://www.youtube.com/watch?v=AX8M6NskRz8

Razones por las cuales se utiliza SOAP

- Los servicios web al ser desarrollados, contienen algo de lenguaje que se utilizan para que estos se comuniquen con las aplicaciones cliente, SOAP es el medio que se desarrollo para lograr este propósito. Este protocolo también es recomendado por el consorcio W3C, que es el órgano rector de todos los estándares web.

- Es un protocolo ligero que se utiliza para el intercambio de datos entre aplicaciones.

-Esta diseñado para ser independiente de la plataforma así como también ser independiente del sistema operativo.

-Funciona en el protocolo HTTP: SOAP funciona en el protocolo HTTP, que es el protocolo predeterminado utilizado por todas las aplicaciones web.


GURU99. Soap Web Services Tutorial: Simple Object Access Protocol. Consultado el 5 de septiembre de 2019. Recuperado de: https://www.guru99.com/soap-simple-object-access-protocol.html








Servicio Web XML

Aprendiendo acerca de Servicios Web XML

Como ya lo había mencionado anteriormente los servicios web son una colección de protocolos y estándares, que se utilizan para intercambiar datos entre aplicaciones y sistemas. Primeramente hablaré en especifico de lo que es  XML, por sus siglas en ingles Extensible Markup Languaje que en español significa Lenguaje de Mercado Extensible, es un conjunto de reglas para definir etiquetas semánticas que organizan un documento en diferentes partes. Es un metalenguaje que define la sintaxis que utiliza para definir otros lenguajes de etiquetas estructurados.


Los Servicios Web XML no son mas que bloques de código ejecutable, expuestos a través de protocolos estándar para su uso en la web. Este bloque de código que estructura un servicio web XML, parece mas un programa de consola sin interfaz; se trata de una clase publica que define métodos. Los cuales son denominados como métodos de servicio web XML, los cuales pueden ser invocados por aquellos programas que consuman el servicio.

Estos servicios web permiten el manejo distribuido de componentes, los cuales permiten tomar ventaja de la infraestructura de internet para la distribución de funcionalidad y paquetes de datos.

Ejemplo de datos en XML.

<note>
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>No me olvides este fin de semna!</body>
</note>

Unidad 5. (2016). Servicios Web XML. Consultado el 5 de septiembre de 2019. Recuperado de: http://servicioswebxml.blogspot.com/

Weschools.com.  XML Tutorial. Consultado el 5 de septiembre de 2019. Recuperado de:https://www.w3schools.com/xml/






Bienvenidos

Bienvenidos a mi blog en el cual mostrare algunos conceptos básicos como una introducción para el tema: Aplicaciones Web Orientada a Servicios.

Servicio web

Como primer concepto a conocer es el servicio web, y bien algunos autores manejan el concepto de servicio web como un conjunto de aplicaciones o colección de procedimientos (métodos) a los cuales se puede llamar desde cualquier lugar de internet, siendo este un mecanismo de invocación, muy independientemente de la plataforma que utilicemos o del lenguaje de programación, que se halla implementado en el servicio.



Al momento de conectar con un servidor web desde nuestro navegador, el servicio web nos devuelve la pagina web que solicitamos, el cual es un documento que mostrara el navegador para que lo pueda visualizar el usuario, pero es difícilmente entendible por una maquina. Los servicios web ofrecen información con un formato estándar que puede ser entendido fácilmente por una aplicación. 

De acuerdo con la comunidad internacional World Wide Web Consortium, define a un servicio web como un sistema de software diseñado para soportar interacciones máquina a máquina a través de la red. En otras palabras los servicios web proporcionan una forma estándar de interopear entre las aplicaciones software que se ejecutan en diferentes plataformas.



Universidad de Alicante.(2014). Introducción a los servicios web. Innovación de servicios web SOAP. Consultado el 4 de septiembre de 2019. Recuperado de: http://www.jtech.ua.es/j2ee/publico/servc-web-2012-13/sesion01-apuntes.html


Aprendizaje Obtenido

Al realizar esta actividad, estuve investigando acerca de los temas, que por completo desconocía, ahora tengo un poco más de noción de acer...