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?

3 Comments »

The URI to TrackBack this entry is: http://nosoloparidas.blogsome.com/2006/06/07/im-back/trackback/

  1. Oh, que alegría, más tecnología privativa diseñada para esclavizar a los usuarios.

    Pues que bien, por muy bonita y maravillosa que sea en su funcionamiento, acaba haciendo daño a todos.

    Comment by El Cerrajero — June 8, 2006 @ 7:09 am

  2. Sinceramente, me parece una exageración presuponer que el hecho de que el código fuente de la tecnología no esté disponible para todo el mundo, implique que hará daño a sus usuarios.
    Y de hecho, no estoy seguro que no esté efectivamente disponible, puesto que el código fuente del CLR de .NET y de la biblioteca de clases sí lo está (esa es la base con la que trabajan en el proyecto Mono), luego no sería tan raro que éste, el de WinFX lo estuviera o lo vaya a estar.
    Pero, en cualquier caso, aunque finalmente no llegara a estar disponible, el 99% de los usuarios ni lo necesitan ni encontraran excesivos inconvenientes en no poder tenerlo a mano. Si no entiendes algo, ¿para qué quieres tener acceso a su lectura?
    En cuanto a los desarrolladores, que se supone que somos los que podemos encontrarle utilidad… sí, hay partes que pueden servir para algo pero… ¿a cuantos desarrolladores conoces que hayan encontrado algún provecho a poder abrir y ver el código de una función del sistema del kernel de Linux? Vale el tema de que se puede recompilar el núcleo y poner y quitar los módulos que te interese, eso es útil y no lo tiene Windows, pero eso no tiene que ver con abrirle las tripas y mirar dentro. Pocos entienden (entendemos) tanto como para desentrañar muchos de sus misterios, amén de que, hasta donde he leído a expertos, mucho del código del núcleo de Linux es un ejemplo de lo que en las facultades te dicen que es la forma de no programar (aunque seguro que profesionalmente sea lo más común).

    En definitiva, resumiendo, y contestando tu comentario:
    a) Yo soy desarrollador, no usuario, por tanto no me veo atado por sus problemas y sus razonamientos morales. Quiero que mi trabaje se acabe lo antes posible para volver a casa y disfrutar de mi vida más allá de un monitor.
    b) Disponer de información no significa ni pensar en utilizarla ni ser capaz de hacerlo.
    c) WinFX, Indigo, y demás nuevas tecnologías son gratis y están ahi para si las quieres usar, y si no quieres usarlas nadie te odiará por ello.

    Comment by Administrator — June 8, 2006 @ 2:48 pm

  3. ¿Cómo que nadie? Steve Ballmer te odiará… nada menos xDDD

    Comment by Lek — June 8, 2006 @ 3:10 pm

RSS feed for comments on this post.

Leave a comment

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>























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