venerdì 18 febbraio 2011

Sviluppare RIA con Flash, Silverlight o Java: tecnologie a confronto

Mi sono domandato quale fosse la tecnologia migliore da adottare attualmente per realizzare una piccola presentazione grafica su un sito.
Quando navighiamo in internet ormai ci troviamo di fronte a delle vere e proprie applicazioni interattive graficamente accativanti: sono le cosiddette Rich Internet Applications (RIA).
Ho fatto delle ricerche in internet e mi si sono presentate cinque opzioni accettabili:
  • Adobe Flash: è la tecnologia che c'è da più tempo per fare applicazioni grafiche leggere di proprietà di Adobe-Macromedia. Fondamentalmente i sorgenti si basano su un linguaggio di script detto ActionScript. Gli ambienti di sviluppo più usati sono Adobe Flash Builder (versione trial gratuita oppure la "Premium" a pagamento), Adobe Air o Flash Develop (open source, gratuito). Richiede l'installazione di un plugin sul browser dell'utente finale.
  • Microsoft Silverlight: tecnologia Microsoft secondo cui un plugin può essere sviluppato mediante linguaggi XAML (eXtensible Application Markup Language) e C#: si integra perfettamente all'interno del .NET Framework e Visual Studio, essendo XAML il linguaggio usato per decrivere le interfacce grafiche in WPF (Windows Presentation Foundation). Richiede l'installazione di un plugin sul browser dell'utente finale.
  • JavaFX: famiglia di software applicativi, basati sulla Piattaforma Java, creato da Sun Microsystems e divenuto un prodotto Oracle. Lo sviluppo delle applicazioni si basa su un linguaggio che ha alcuni scostamenti da Java detto "JavaFX script", ma pienamente supportato dalla Sun. L'ambiente di sviluppo rimane quello classico di Java: Eclipse o NetBeans. L'applicazione si integra al browser come fosse un'applet, per cui sul client vi deve essere una JRE installata.
  • Javascript: si raggiungono risultati ammirevoli per mezzo di tecnologie AJAX e librerie quali JQuery, Prototype, Ext JS ecc. L'ambiente di sviluppo è quello classico di Java (p.es. NetBeans/Eclipse) anche se il debugging è più laborioso. Il vantaggio consiste nel non dover scaricare alcun plugin o ambiente sul client, ma basta attivare Javascript. Uno svantaggio di questo approccio è che il risultato finale non è indipendente dal browser sul quale girerà la presentazione, ma bisognerà tener conto della piattaforma client.
  • OpenLaszlo: è una piattaforma open source per lo sviluppo di applicazioni web, è basato sui linguaggi Java/LZX e su un OpenLaszlo Server. In pratica l'applicazione web viene rilasciata come una normale servlet che gira sull'OpenLaszlo Server.Il risultato è un DHTML oppure un normale file Flash SWF. Questa tecnologia, dal punto di vista di un browser, in realtà non presenta niente di nuovo rispetto alle altre tecnologie esistenti, mi pare più che altro un modo alternativo per creare file Flash.
Ci sono anche altre tecnologie adottabili, ma queste esulano dagli scopi di creare una semplice presentazione di immagini che sia leggera, economica di risorse e semplice da realizzare (vedi p.es. la piattaforma open source Flex o Java Swing).
Dopo una breve indagine, ho decretato che le opzioni sono abbastanza equivalenti per ciò che riguarda il risultato finale (l'aspetto grafico). Ho trovato interessanti siti in cui le tecnologie vengono messe a confronto (per esempio questo confronta Flash con Silverlight, mentre questo esegue un benchmark tra le diverse tecnologie). Quest'altro link evidenzia la richiesta del mercato delle tre tecnologie Flash, Silverlight e JavaFX. Un punto a favore di Flash lo si ha andando a guardare quale sia la penetrazione attuale nei browser tra Flash, Silverlight e Java. Due interessanti siti sono RIAStats e StatOwl. Nonostante Silverlight stia aumentando la sua popolarità e area di mercato, la sua penetrazione si aggira intorno al 61.11%, ancora Flash risulta il plugin più installato (96.12%), mentre Java rimane costante (78.54%).
Credo che ad oggi la scelta di Adobe Flash, a meno di altri fattori, sia ancora quella più azzeccata.


1 commenti:

Anonimo ha detto...

Volevo solo segnalare che i dati relativi alla penetrazione nel mercato globale sono corretti, ma se parliamo del mercato italiano le percentuali cambiano in quanto java passa al 72% e silverlight al 78%. Questo è probabilmente dovuto dal fatto che siti autorevoli come mediaset e rai utilizzino principalmente silverlight per i loro video.

Posta un commento

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | cna certification