Archivo

Entradas Etiquetadas ‘synth’

StupidZombie y la venganza del Synth

Lunes, 25 de mayo de 2009

OK, lo admito. Un titulo un poco rebuscado para el articulo. Sin embargo quizas no está tan mal ya que Synth (la tecnología que según SUN puede hacer mucho más fácil agregar pieles a las aplicaciones de Swing) es un poco misteriosa. Después de leer varios articulos relacionados  escritos por Xuan Yun en el blog de Java de SUN y de pedirle un poco de ayuda este me recomendó varios enlaces:

¿Y como se le aplica a StupidZombie? Estoy tratando de hacer un tema en Synth para la aplicación, sin embargo pareciera que va a requirir de bastantes pruebas antes de salir bien pulida. Por los momentos y para la versión inicial me voy a conformar con que haga juego con el nuevo sitio web, que tenga sus inconos decentes (ya vienen, es un trabajo en progreso) y que no tenga cucarachas aterradoras :)

¿Ya visitaron el sitio web de StupidZombie? ¿Qué les parece?

java, kodegeek, programación , , , , , , ,

Java y Swing: Cuando el rehuso no es lo mejor

Domingo, 17 de agosto de 2008

Ha pasado un rato bien largo desde que escribo en el blog; La razón principal es que he estado estudiando (en algún momento les comentaré para qué) y decidí concentrarme únicamente en eso y en el trabajo.

Cero distracciones.

Lo otro es que ahora estoy haciendo algo que no habia hecho antes: Aplicaciones de escritorio en Java. Si bien el lenguaje es el mismo, las implicaciones son diferentes de cuando se hace una aplicación del lado del servidor o aplicaciones web.

Los operadores de piso (traders) con quien trabajo empezaron nuevos negocios y varios de ellos pedian aplicaciones en Swing. Incialmente comenzé con una muy sencilla, escrita totalmente desde cero la cual recibe ordenes que los corredores de bolsa hacen las cuales deben ser aprobadas por los operadores (me disculpan si los términos no son exactos pero es que me da una flojera enorme de hacer spanglish :) ). De allí alguien se dió cuenta que podía ayudarlos a acomodar la aplicación de trading principal.

En este caso, el componente que tenia problemas trabajaba bien … hasta la 1:00 de la tarde. Después de allí fallaba por falta de memoria y los analistas no odian ver sus transacciones en tiempo real de ahi en adelante.

La aplicación original es impresionante, con un montón de aditamento que la hacen sofisticada aún el día de hoy, 5 años después que fué creada (la aplicación ha tenido varias reencarnaciones, cada una de ellas con más funcionalidad). El problema es que tiene capas, capas y más capas de código hecho en casa el cual ya no es compatible con Java 1.6 (de hecho, aún tenemos que correr la mayor parte de esta en una versión anterior de la máquina virtual).

¿Cual fué la solución? Me pidieron que volviera a escribir esa parte de la aplicación (sin otros detalles) en una tarde. La única forma que se me ocurrió fué escribirla a mi manera usando solamente Swing, ningún aditamento.

La aplicación comenzó como un prototipo, del cual todos estabamos algo temerosos (400 mil entradas al día y desempeño rápido eran los requerimientos). De allí cosas básicas como ordenar y ocultar columnas, filtros, exportar los datos a Excel (Si, si la aplicación tiene tablas) entre otros se portaron muy bien. Hubo que tener en cuenta problemas de concurrencia (ya que la aplicación es de alto número de transacciones, además de que debe mostrar todas las operaciones del dia, haciendo una repetición de todas las que hayan ocurrido antes de arrancar el programa).

El nuevo componente no sólo muestra 500 mil transacciones sin problema, sino que además es más rápido (ya lo usamos en días de alto volumen y con expiración de opciones. Trabajó sin chistar). Agregarle la funcionalidad de la aplicación vieja no fué tan difícil y resulta que ahora los operadores con los que trabajo se mudaron a la nueva aplicación.

Y aún sigo aprendiendo cosas nuevas de Swing. Lo último que descubrí es que soporta pieles, usando Synth y que la integración nativa con el escritorio ha mejorado mucho.

Supongo que esta es una de esas ocasiones en donde es mejor “quemar al rancho” y volver a construir desde cero.

Ya les comentare más, pero si quieren leer sobre mis andanzas estos días metanse en los foros de Java Swing de Sun :) .

Buscar en otros sitios:

Blogalaxia:, , , , ,
Technorati:, , , , ,
To2blogs:, , , , ,
Del.icio.us:, , , , ,

java , , , , ,