martes, enero 25, 2005

Mono. La magía de la portabilidad

Estoy días me la he pasado escribiendo código para un proyecto, ya quiero terminarlo, mientras más pronto termine más pronto me pagan, y mientras más pronto me paguen más tiempo tendré para MonoUML.

La aplicación que ando haciendo no es la gran cosa, pero como se busca que funcione en UNIX y MS Windows pues decidí darme una vuelta por los sistemas propietarios.

He quedado impresionado con mono, en verdad la gente detrás del proyecto esta haciendo un muy buen trabajo, el día de hoy probando el instalador de Paco he quedado también sorprendido, que buen instalador, todo en uno, no necesitas nada más para comenzar a desarrollar con mono en MS Windows, bueno, un editor quizás pero seguro el Bloc de notas sería también util, lo unico que (hasta este momento) no tiene es el monodoc, pero bueno, se puede consultar la versión en línea o probar el port que se esta haciendo.

Después de instalar mono en MS Windows y copiar los compilados hechos en Linux y ejecutarlos, no hubo problema alguno, es cierto que las aplicaciones hechas en Gtk se ven mejor en versiones nativas de UNIX, pero también es cierto que Gtk es portable y no decir de Gtk#, todo funciono perfectamente: threads, gtk#, glade#, pango en inclusive una imágen contenido dentro del winexe. Algo también interesante fue el XSP, de la misma forma, funciono, sin contratiempos, todo bien, los webservices funcionaron, inclusive una actualización programada en mi aplicación a una BD MySQL funcionó correctamente, sin errores.

Ventana principal. Linux Ventana principal. MS Windows
Configuración. Linux Configuración. MS Windows

Es claro que las aplicaciones escritas en GTK# se ven mejor en *NIX, pero eso no quiere decir que no funcionen en MS Windows :).

Por el lado de MonoUML, todo indica que tendré que apoyar a Rodolfo en la documentación de ExpertCoder, para así agilizar un poco más la integración entre los widgets de MonoUML.UML2/DI y la implementación de ExpertCoder.Uml2, inclusive he subido unos cambios al CVS para ver como se hace, en realidad podría decirse que no hice gran cosa, ahora el UMLActor al cambiar su nombre notifica a los demás de esta forma el Tree y la pestaña de propiedades de actualización correctamente. Aunque hay algunos detalles que no se si son porque pierdo las referencias a las variables al diagrama o es un error propio de EC, pues en ocasiones si salva los cambios y en otras no, es raro, debera depurarse con tiempo. Por cierto que el generador de código de Rodolfo funciona correctamente, por ahora sólo genera código para C#, pero por algo debemos de comenzar.

Nota de hoy: 'Buen trabajo el de los monos.'