Flex vs Laszlo: Primeros Comentarios

Como dije en mi último post, pendiente tenía el probar Laszlo y evaluarlo como posible solución a la hora de crear RIAs. Creo que era inevitable a su vez, comparar el producto con Flex, pero conforme se profundiza en ambas plataformas se da uno cuenta de que hay multitud de diferencias y que los enfoques no son tan similares como cabría de esperar.

Laszlo como sabreis es una solución más antigua que Flex y que recientemente ha pasado a ser Open Source. Esta conversión erá necesaria dado que aunque se trata de un producto de indudable calidad (como luego intentaré explicar) personalmente no creo que hubiese podido competir en la misma liga que Macromedia Flex durante mucho tiempo. Me explico:

Laszlo es otro servidor de presentaciones basado en Java y que usa otro combo de lenguajes similar a Flex, en este caso LZX + Javascript (en contrapartida al MXML + Actionscript de Flex). Actualmente el servidor genera SWF, pero su objetivo no es basarse en Flash, es decir, si más adelante hubiese otra tecnología capaz de tener la ubiquidad y capacidad que oferta hoy día Flash está podría ser candidata de ser utilizada posteriormente como cliente en las aplicaciones generadas con Laszlo. Por eso la manera de pensar con Laszlo no es una copia de la manera de pensar en Flex porque en el fondo son productos con claras diferencias.

Si buscamos los pros y los contras de ambas tecnologías, podemos encontrar entre otras las siguientes: Laszlo es Open Source, con lo que podemos generar SWF sin coste alguno (y esto debería ser una razón de peso para apoyar un proyecto asi), posee un conjunto de controles atractivo y practicamente con las mismas funciones que los de Flex. Existe compatibilidad con Flash 5 (mientras que Flex requiere FP7). Las aplicaciones que se pueden generar mediante LZX y Javascript son bastante versatiles, pudiendose también generar clases mediante XML. Uno de los puntos negativos a día de hoy es que los ficheros que genera son excesivamente grandes (los de Flex suelen ser considerablemente más optimos, sobre todo con la nueva funcionalidad de Runtime shared libraries), aunque esto es uno de los principales puntos del RoadMap de Laszlo a la hora de plantear su evolución hacia una versión 3. Por otra parte otra pega está en la manera de integrar con la parte de backend. Hasta hace poco con Laszlo solo se podía hacer intercambio de datos mediante XML sobre HTTP, pero hoy día ya se pueden usar otros mecanismos RPC como JavaRPC o WebServices. Desde mi punto de vista esto, aunque positivo, no es lo óptimo pues todos sabemos que lo más potente es AMF( Flash Remoting). Quizá el motivo para no soportar esta tecnología sea el hecho de que se trata de un protocolo propiedad de Macromedia y no un standard, pero creo que es un desperdicio cuando ya existe una solución que podría ser integrada en el proyecto como es OpenAMF para dar este soporte. Por último creo que le falta un framework o arquitectura para realizar aplicaciones de fácil escalabilidad y reusabilidad como ARP o Cairngorm.

Además el plugin para eclipse desarrollado por IBM(ide4laszlo) aunque todavía le falta un hervor es un gran aliciente pues para los que nos encanta eclipse nos da la integración necesaria con este producto y nos enseña de manera rápida los componentes de que dispone y sus ayudas de tags en el código sirven bastante bien para acelerar nuestro proceso de aprendizaje. Además dispone de modo “preview” muy útil.

Desde aquí no puedo más que recomendar Laszlo, pues realmente he disfrutado con lo que he visto y creo que puede llenar una parte del naciente mercado de las RIAs, aquel en el cual una solución tan cara como Flex(12k$ por dos CPUs) no entra en un presupuesto. Pero también creo que desarrollar con Laszlo puede dar a priori más quebraderos de cabeza de lo que daría una solución como Flex, pero esto no es raro teniendo en cuenta el precio considerable de este último. Seguramente aunque desde mi punto de vista Flex sea superior, Macromedia deberá tarde o temprano ir ajustando el precio de su producto pues no hay persona del medio que no se sorprenda al oirlo.

Sin duda dos caminos con bastantes diferencias y a los cuales debemos atender si queremos estar al día en este mundo tan cambiante como es el de las RIAs.

2 Comentarios

  1. Hola Carlos, que tal.

    Llevo dí­as provando Laszlo y hasta el momento esto es lo que he visto:

    Lo primero que he podido constatar es que el plugin para eclipse no puede instalarse en el WASAD 5.1.2 ya que trabaja con una versión más antigua de eclipse. Así­ que de momento me quedará sin probar el IDE. 🙁

    Luego no he podido hacerlo funcionar con el WAS 5.0, pero sí­ con el WAS 5.1.

    No permite crear lineas ya que no tiene ninguna api para dibujar. El enlace:

    http://www.laszlosystems.com/developers/community/forums/showthread.php?s=874763a5b2b51f56df2e1cbb36c52a48&threadid=281&highlight=draw+lines

    Hasta ahora lo que he visto son los componentes y los ejemplos que vienen con laszlo, pero me falta por ver, y es lo que más me interesa, como interactua laszlo con el servidor. De eso espero que tu nos vayas dando más info :P.

    Por último, y como bien comentas, la gran ventaja de laszlo es que es open source.

    Saludos

  2. Hola Alberto ¿qtal?

    Como dices Laszlo todaví­a no tiene una drawing API, pero es uno de los puntos que aparece en el RoadMap hacia la versión 3.

    En cuanto al IDE, tanto yo como un amigo que lo probó, tuvimos problemas a la hora de instalarlo, esto es porque tira de muchas pequeñas instalaciones de pequeños plugins, y lo que nos ocurrió a los dos, fue que nada más instalarlo no funcionaba o hací­a alguna cosa rara, pero conforme tocabas, y rearrancabas eclipse, funcionaba…como digo, todaví­a le fata un hervor.

    En cuanto a la interacción con el servidor es una de las cosas en las que Laszlo va a tener que mejorar bastante si quiere competir con Flex. De momento los mecanimos de RPC los he tocado un poco y resuelven el tema, pero es necesaria una implementación de Flash Remoting sea como sea. Ojalá se planteán implementar OpenAMF.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *