NoSoloParidas

June 7, 2006

I’m back [con Indigo]

Filed under: Informatica

Indigo

Vuelvo al tajo, ahora que ya estoy algo más libre de exámenes (me queda uno, y otro me lo he “fumado”). Qúe mejor forma de regresar que hablando de Informática, aunque realmente me sorprenda a mí mismo que aún me queden ganas después de los meses de prácticas y más prácticas (inútiles todas) que llevo, amén de los correspondientes tochos teóricos a empollar para los exámenes.

Pero, en fin, eso ya pasó, es tiempo de la informática que sí que me gusta, y en esta última categoría entra Indigo (aka. Windows Communication Foundation). No se sí he hablado antes en la bitácora de esta tecnología, pero si no es así, ya va siendo hora de contar algo de lo poco que se al respecto.

Indigo (o WCF, como se prefiera) es la nueva tecnología de Microsoft para la creación de servicios web mediante el uso de código “gestionado” o manejado (el que utiliza .NET). Ofrece un montón de ventajas para los desarrolladores, pero la principal es que les permite abstraerse enormemente de toda la maquinaria de comunicación subyacente. ¿Qué significa esto? Pues que no tienen que pensar en términos de sockets, TCP, HTTP y demás protocolos de comunicación, sino simplemente centrarse en las reglas de negocio de la aplicación y en los servicios que hay que desarrollar. Una vez hecho esto, la capa de transporte subyacente es cosa de Indigo, que permitirá, entre otras cosas, cambiar las propiedades de la misma de forma rápida y sencilla. Un ejemplo: utilizando un esquema de mensajería duplex para que los métodos puedan devolver información en las llamadas (con la típica sentencia return) es tan sencillo añadir encriptación de mensajes TripleDes como un par de atributos en un fichero app.config en XML. ¿Sencillo verdad?

Por supuesto, la nueva tecnología está totalmente integrada con Visual Studio 2005, que para mí es la maravilla de las maravillas en cuanto a IDEs. Esa es la buena noticia, la “mala” es que es tecnología beta, y es más que probable que un código que funcione con una beta o una CTP (Community Technology Preview) deje de funcionar con la siguiente versión, a falta de hacer los pertinentes cambios en nombres de atributos en los ficheros de configuración, o nombres en los atributos del código. Porque sí, el código también se adorna con atributos, para establecer restricciones intrinsecas a la aplicación que no queremos que se puedan cambiar en tiempo de ejecución.

Me explico mejor. Algunos requisitos, como la necesidad de sesiones o cierto tipo de servicios en cuanto a la capa de transporte imprescindibles para la aplicación, deben solicitarse en el propio código, ya sea con programación imperativa clásica, o con los atributos del código, sentencias del tipo [ServiceBehavior] que acompañana al código en C# (u otro de los muchos lenguajes .NET). En cambio, ciertos parámetros a la hora del despliegue, dirección del servicio, características subyacentes del transporte, etc, puede ser necesario moldearlas en la instalación de la aplicación. Para evitar tener que recompilar el código (cosa que en ocasiones puede no ser posible puesto que no se disponga del código fuente), estos parámetros se dejan para los ficheros de configuración en XML, lo cual hace totalmente sencillo el despliegue de aplicaciones.

En fin, esto es un pequeño apunte de esta nueva tecnología, parte de WinFX, la API de código gestionado que vendrá con Windows Vista pero que también estará disponible para Windows XP. Ya escribiré más al respecto, aunque un análisis más detallado se encuentra en los números de Mayo, Junio y Julio de la revista SoloProgramadores, donde me han publicado un par de artículos (publicidad subliminal :P ).

Cualquiera pregunta o duda, ¿para qué están los comentarios?






















Get free blog up and running in minutes with Blogsome | Theme designs available here