Share this post
  

Resumen - Arquitectura REST y servicios móviles

Resumen de la charla del pasado 30 de enero de 2016 sobre arquitectura REST y servicios web con Xamarin. ¡Gracias a todos por acompañarnos!

Sobre REST y servicios web

REST es el acrónimo para Representational State Transfer, el cual es un estilo de arquitectura de software altamente utilizado hoy en día para crear aplicaciones distribuidas y modeladas alrededor de la especificación HTTP.

REST sigue la anatomía de la web para acceder recursos disponibles en internet por medio de representaciones (aka HTML, JSON, XML o algún otro) por medio de acciones o verbos HTTP. Esto nos permite crear servicios que resultan fáciles de entender, representar y construir aplicaciones capaces de interactuar el servicio web (o API, Application Programming Interface) en el cual podemos encapsular ya sean datos, lógica de negocio y otros recursos.

Sobre la Solución:

En esta ocasión desarrollé una pequeña aplicación móvil capaz de conectarse via REST a una base de datos NoSQL hospedado en Firebase (Google) y realizar las operaciones CRUD básicas (Create, Read, Update y Delete).

En resumen el proyecto contiene:

  • Una aplicación portable de forma nativa a iOS, Android y UWP con el framework Xamarin.Forms (~90% del código C#/.NET compartido entre las plataformas)
  • Llamadas REST hacia Firebase (Base de Datos NoSQL hospedada en la nube + API REST)
  • Algunos elementos de Material Design específicos para la aplicación en Android

Plugins adicionales:

  • Json.Net: Serialización/deserialization de objetos con JSON rápida y sencilla.
  • Xam.Plugin.Connectivity (Network Connectivity Plugin): Plugin de Xamarin para determinar el estado de la conexión a internet en todo momento.
  • ModernHttpClient: Plugin optimizado para conexiones HTTP en iOS, Android y UWP
  • Microsoft.Net.Http: Librería portable realizar llamadas HTTP de manera centralizada y re-utilizable en iOS, Android y UWP
  • Android Support Library: Complemento adicional para soporte de elementos de Material Design
Share this post
  


@stvansolano
More about me