In questi ultimi giorni ho dato una veloce occhiata a due interessanti Framework per Rich Internet Application: OpenLaszlo e Macromedia Flex.

Entrambi concettualmente sono la stessa cosa: "semplicemente" delle servlet, che vanno pubblicate da un servlet engine come Tomcat o BEA WebLogic o gli altri 100mila che esistono gratuiti o meno, e che pubblicano non HTML ma SWF, cioè filmati flash visualizzabili in qualunque browser supporti questa tecnologia (tutti).

Entrambi definiscono la grafica del filmato tramite file di tipo XML, mentre la logica di programmazione vede l'utilizzo di JavaScript in Laszlo e di ActionScript 2 in Flex.

Le prospettive di utilizzo sono molto interessanti: di fatto lato server si ha accesso, o diretto o tramite altre servlet specificamente sviluppate, a tutto (database, filesystem, risorse locali o remote) mentre un limite della programmazione via flash è proprio il fatto che un SWF è estremamente chiuso (giustamente) al PC client e alle sue risorse, mentre l'interazione lato server è comunque limitata dal canale http client/server. In questi due prodotti il problema si risolve, è tutto lato server e al client viene inviato solo il risultato dell'elaborazione...

In breve, faccio una lista degli elementi principali dei due framework:

COSTO: Flex costa una marea (tipo 10000 euro per 5 licenze), Laszlo è OpenSource, e questo è ottimo direi.

FACILITA D'USO: l'installazione è immediata in entrambi (basta copiare i file nella dir webapp di Tomcat => XCopy installation, giusto?), per la costruzione visuale della GUI Flex dispone del Flex Builder (un Dreamweawer modificato, si paga salato pure questo...) mentre Laszlo ha un IDE x Eclipse (sia lodato Eclipse...) fantastico (anche se un pò esoso di memoria) sviluppato da IBM.

PROGRAMMAZIONE: Laszlo usa JavaScript, che (ma potrei sbagliarmi) è abbastanza limitato rispetto ad un linguaggio tradizionale (ad esempio C#) sia per la OOP che per la libreria di classi disponibili (ad esempio, ci sono strutture già pronte come le collection o altro?). Flex usa AS2.0, che in quest'ambito è molto più avanti, essendo molto simile a Java nella OOP e nella libreria di classi disponibili (ulteriormente estesa in Flex rispetto a Flash MX 2004).

SUPPORTO: dietro Laszlo c'è la comunità opensource, dietro Flex c'è Macromedia. Se state per dire: meglio l'opensource di Macromedia saltate al prossimo punto...

LATO CLIENT: che schifo di titolo per dire questo... di fatto il flash player è standard in tutti i browser e computers (97% dei PC installati hanno FlashPlayer installato), però lo standard SWF non è nè pubblico nè di fatto uno standard: Macromedia se ne riserva lo sviluppo, non lo documenta (anche se il reverse engineering non è difficile e le istruzioni bytecode facilmente comprensibili), e ne guida le innovazioni. Tra poco tempo dovrebbe uscire Flash 2005 e con esso credo FlashPlayer8, di cui Flex farà sicuramente ampio uso; Laszlo si accoderà probabilmente in poco tempo, però imho il problema resta...

Fatto

Scusate le eventuali imprecisioni, se ho scritto qualche castroneria sarei anche io felice di saperlo, in particolare riguardo JavaScript e la sua libreria di classi...