
Como tantas veces, los equipos de desarrollo de herramientas de desarrollo de Microsft nos llevan a los programadores con la lengua fuera desde hace ya más de un lustro.
A las publicaciones, actualizaciones y services packs con novedades mensuales en todo el ecosistema de herramientas, hoy quiero traer un framework que se integra en las soluciones Web MVC 4.0 para construir aplicaciones RESTful, es decir que soporten de forma completa comunicaciones REST (siendo puristas es mucho más que comunicaciones).
En resumen, de un modo muy de brocha gorda, se le llama REST a las aplicaciones que comparten recursos por medio de URI + nombre del recurso + comando HTTP + parámetros y que devuelven la información en XML o en JSON, obviando encapsulamientos complejos como SOAP o llamadas RCP, y que la sencillez de su uso y el poco “peso” de las comunicaciones, han hecho un estándar de facto su uso en las principales API actuales.
MVC divide el código en tres capas diferencias, cada uno con su propia responsabilidad:
Si bien la inclusión del framework ASP.NET MVC no significa el fin de las aplicaciones Web realizadas con WebForm, sí que ha implicado su decadencia ya que el modelo MVC es bastante más mantenible y robusto, a pesar de tener una curva de aprendizaje más empinada.
ASP.NET WebAPI es el nuevo framework de la familia .NET que tiene como objetivo el facilitarnos en gran medida la construcción de aplicaciones RESTFul orientadas a ofrecer servicios, como podría ser Twiter, World of Warcraft, Amazone o Windows Azure.
Fíjate que estamos hablando de construir un API a nuestra aplicación, y que la fuerza de este framework es hacer sencillo desarrollar un módulo que permita acceder y explotar nuestra información desde cualquier tipo de dispositivo; ya sea un portátil, una tableta o un móvil.
La ventaja, como todo framework, es que nos da hecho el trabajo repetitivo, y nos provee de una arquitectura MVC con unas buenas bases desde la que iniciarnos en el desarrollo. También incluye las referencias para utilizar Entity Framework 5.0, JQuery y, muy importante, construye el proyecto de testing adecuado para el desarrollo en TDD (o casi).
Pero como no hay nada mejor para aprender que el trastear en primer mano, lo mejor es que te pases por la Web de ASP.NET WebAPI, ASP.NET MVC y que descubras por ti mismo la potencia de esta herramienta.
Ah, y si te apetece meterte con el código del framework, solo recordarte que ASP.NET MVC, Razor (el lenguaje de marcado) y WebAPI son Open Source con licencia Apache 2.0 y puedes involucrarte en el desarrollo en la página de ASP.Net en codeplex.
Más información | ASP.NET WebAPI, ASP.NET MVC