<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Rest-Api on Flowing Code</title><link>https://www.flowingcode.com/es/tag/rest-api/</link><description>Recent content in Rest-Api on Flowing Code</description><generator>Hugo</generator><language>es-AR</language><lastBuildDate>Wed, 20 May 2020 18:10:03 +0000</lastBuildDate><atom:link href="https://www.flowingcode.com/es/tag/rest-api/index.xml" rel="self" type="application/rss+xml"/><item><title>Aplicación Demo Vaadin 10 + Spring: estadísticas de la Copa Mundial Rusia 2018</title><link>https://www.flowingcode.com/es/aplicacion-demo-vaadin-10-spring-estadisticas-de-la-copa-mundial-rusia-2018/</link><pubDate>Wed, 20 May 2020 18:06:58 +0000</pubDate><guid>https://www.flowingcode.com/es/aplicacion-demo-vaadin-10-spring-estadisticas-de-la-copa-mundial-rusia-2018/</guid><description>&lt;div style="clear: both; text-align: center;">&lt;img alt="" class="alignnone size-full wp-image-430" height="340" loading="lazy" src="https://www.flowingcode.com/images/uploads/2018/07/Vaadin-10-Spring-Demo-application_-World-Cup-Rusia-2018-stats-1.png" width="760"/>&lt;/div>
&lt;div>
&lt;div>&lt;/div>
&lt;div style="text-align: justify;">Para probar algunas nuevas e interesantes tecnologías web, decidimos crear una pequeña aplicación demo que muestre ideas que podrían ayudar a un desarrollador cuando intente decidir cuáles usar en un nuevo proyecto. Esto lo realizamos, teniendo en mente el objetivo de que sea responsiva, que permita mostrar información acumulada y en tiempo real del Mundial de Fútbol que actualmente se desarrolla en Rusia.&lt;/div>
&lt;/div>
&lt;h4>Tecnologías&lt;/h4>
&lt;div>Las tecnologías elegidas fueron:&lt;/div>
&lt;div>
&lt;ul>
&lt;li style="text-align: justify;">&lt;a href="https://vaadin.com/" rel="noopener noreferrer" target="_blank">Vaadin 10&lt;/a>: La nueva versión de este popular framework, basada en los nuevos estándares impulsados por los browsers más populares.&lt;/li>
&lt;li style="text-align: justify;">&lt;a href="https://spring.io/" rel="noopener noreferrer" target="_blank">Spring Framework&lt;/a>: El framework de inyección de dependencias estándar, que actúa como la columna vertebral de la mayoría de los proyectos en java actuales.&lt;/li>
&lt;li style="text-align: justify;">REST API: Nuestro proyecto utiliza la API que puede encontrarse &lt;a href="http://worldcup.sfg.io/" rel="noopener noreferrer" target="_blank">aquí&lt;/a>. La misma expone los datos como una API REST entregando la información en formato JSON.&lt;/li>
&lt;/ul>
&lt;/div>
&lt;h4>Características&lt;/h4>
&lt;div>Esta es la lista de las principales características de la aplicación:&lt;/div>
&lt;div>
&lt;ul>
&lt;li style="text-align: justify;">Es responsiva, mostrará correctamente la información independientemente del dispositivo que se utilice. Esto es posible gracias a Vaadin y Polymer.&lt;/li>
&lt;li style="text-align: justify;">Dependiendo del dispositivo en que navegues el sitio (especialmente dispositivos móviles), puedes agregar la aplicación a la pantalla de inicio, para que se vea como una aplicación nativa. El único inconveniente es que no funcionará en modo offline (aún, capaz pronto).&lt;/li>
&lt;li style="text-align: justify;">Se pueden seguir los resultados de los partidos en tiempo real. Utilizando WebSockets, la aplicación mantiene un canal de comunicación abierto entre el navegador y el servidor, por lo que las actualizaciones pueden ser informadas al cliente tan pronto como se reciban de la API&lt;/li>
&lt;/ul>
&lt;h4>Construcción&lt;/h4>
&lt;div style="text-align: justify;">Se necesita tener un buen punto de inicio para comenzar un nuevo proyecto. Para nosotros, ese punto de inicio fue el starter &lt;a href="https://vaadin.com/start/v10-project-base-spring" rel="noopener noreferrer" target="_blank">Vaadin Base Project with String&lt;/a>. Al seleccionar esta opción, nos beneficiamos del hecho de que ya tiene una configuración Spring probada y en funcionamiento, por lo que la decisión fue fácil.&lt;/div>
&lt;h4>Responsividad&lt;/h4>
&lt;div>
&lt;div style="text-align: justify;">Alcanzamos esta meta, trabajando en paralelo en el desarrollo de &lt;a href="https://vaadin.com/directory/component/app-layout-addon" rel="noopener noreferrer" target="_blank">un nuevo addon para Vaadin&lt;/a> que permite construir nuevas aplicaciones usando una estructura simple que se encarga de construir los elementos visuales habituales presentes en una aplicación responsiva: hamburger menu, paper-cards y más.&lt;/div>
&lt;/div>
&lt;div>
&lt;div style="text-align: justify;">Además, utilizamos algunas técnicas CSS como media queries para completar los toques finales.&lt;/div>
&lt;/div>
&lt;h4>PWA&lt;/h4>
&lt;div>
&lt;div style="text-align: justify;">Para permitir que la aplicación pueda agregarse a la pantalla de inicio de un dispositivo, y se muestre como una aplicación nativa, generamos un manifiesto PWA, con algunas propiedades que puede imitar fácilmente, utilizando una herramienta como el &lt;a href="https://app-manifest.firebaseapp.com/" rel="noopener noreferrer" target="_blank">App Manifest Generator&lt;/a>.&lt;/div>
&lt;/div>
&lt;h4>Actualizaciones en tiempo real&lt;/h4>
&lt;/div>
&lt;div style="clear: both; text-align: center;">&lt;/div>
&lt;div>
&lt;div style="text-align: justify;">Esto es realmente fácil de implementar, gracias a la tecnología @Push de Vaadin, la cual está basada en Websockets. Solamente agregando una simple anotación al layout principal y la aplicación cobrará vida.&lt;/div>
&lt;div style="text-align: justify;">Puede aprender más sobre esta tecnología en la &lt;a href="https://vaadin.com/docs/v10/flow/advanced/tutorial-push-configuration.html" rel="noopener noreferrer" target="_blank">documentación oficial de Vaadin&lt;/a>.&lt;/div>
&lt;h4>Roadmap&lt;/h4>
&lt;p>Estas son las funcionalidades que quisiéramos poder implementar en un futuro cercano:&lt;/p></description></item></channel></rss>