MoebiusMania

Tutorial, articoli e curiosità sul web e dintorni

Flash Platform nella nuova decade

Ora che il 2011 volge verso il termine riusciamo a vedere meglio come sono proiettati in questo nuovo decennio le varie tecnologie e linguaggi che siamo abituati a usare... lo so, il Web è una gran brutta bestia che cambia di continuo a volte con dei risvolti completamente imprevedibili, ma fin dove riusciamo un pochino ad anticipare cerchiamo di farlo! [avviso]Questo articolo è stato scritto PRIMA che la Adobe annunciasse la cessione di Flex alla fondazione Apache, la dismissione di Flash Player Mobile, la rimozione di feature avanzate da Flash Builder e l'interruzione dello sviluppo di Flash Catalyst. [/avviso] Come ho annunciato nel titolo il topic di questo post è Flash, il quale è stato al centro di non poco accese discussioni tra i professionisti del settore. Dopo tanto rumore (in questo caso non per nulla) Adobe ha preso una posizione, non è ancora ufficiale ma dubito lo sarà mai, ovvero che la Flash Platform si concentrerà sul gaming e le applicazioni su diversi media "abbandonando" i siti e parte delle web apps. Prima di lasciarci prendere dalle reazioni a caldo della frase di poco fa chiariamo alcune cose :

Cos'è la Flash Platform?

E' un'ecosistema di software e tecnologie composta da:
  • Runtimes, ovvero dove girano le applicazioni create (Flash Player per il web, e Adobe AIR per desktop, Android, iOS e Internet TV).
  • IDE, i software coi quali si sviluppa (Flash Professional e Flash Catalyst CS5.5, Flash Builder 4.5) a loro volta circondati e integrati con la Creative Suite.
  • Framework, librerie di codice per velocizzare lo sviluppo (Flex e Open Source Media Framework).
  • Server, tecnologie per il controllo e la distribuzione dei contenuti (Flash Media Server).
Come vedete si tratta di un qualcosa di molto esteso e veramente potente e attualmente è l'unica tecnologia che permette a chi ha conoscenze prettamente legate al web di creare contenuti che attraversano diverse piattaforme quali: web, desktop, mobile e TV.

Flash vs HTML5

Già parlare di sfida è un grosso errore in quanto il campo di cose sulle quali si sovrappongono non è poi così ampio. Semplicemente è successo questo: Flash è una tecnologia che si spinge oltre gli standard, pensate a 10 anni fa, vedere un'animazione su un sito era eccezionale, oggi invece è quasi scontato e si può ottenere in svariati modi, quindi prima o poi gli standard si alzano e le cose per le quali prima era necessario un plugin ora possono essere ricreate "nativamente". La fase che stiamo attraversando ora è quella in cui HTML5 è prossimo alla proclamazione in meno di un paio di anni e ha soppiantato Flash per quelle cose che anni indietro erano innovazioni, a breve Flash si dedicherà al 3D accelerato creando un nuovo distacco con gli standard. Ma se proprio vogliamo metterla sul confronto analizziamo pregi e difetti:
  • Cicli di aggiornamento: Html 4 è del 1999 e Html5 è previsto per il 2014... che porta a 15 anni come finestra di aggiornamento, Flash viene aggiornato minimo ogni 18 mesi (il ciclo della Creative Suite).
  • Ambienti di sviluppo: anche se esistono IDE open source principalmente Flash viene sviluppato tramite software proprietari e pagamento dell'Adobe, mentre Html5 - Css3 - Javascript possono essere scritti liberamente in qualunque editor.
  • JavaScript vs ActionScript 3: As3 è un linguaggio OOP nativo ed è abbastanza complesso ,negarlo sarebbe un grosso errore, ma un linguaggio "stretto" permette maggiore facilità di debug, mentre JS è più semplice e viene letto direttamente dal browser ma per molte cose è dipendente da librerie esterne se non si vuole passare giornate a re-inventare la ruota.
  • La questione del video: una delle prime cose che fece partire la discussione Flash Vs Html5 è il tag <video> di quest'ultimo che permette di inserire elementi multimediali nativamente nelle pagine, quindi non c'è più bisogno di creare il player in Flash. Il problema è che il player non fa tutto... la distribuzione del video tramite streaming dipende da tecnologie lato server, alimentate comunque da Flash nella soluzione Media Server, e ogni browser riconosce nativamente solo alcuni codec impendendo una soluzione "universale" semplice.

Morale della favola?

Il punto non vuole essere "questo meglio di quello" ma cercare di chiarire che cos'è esattamente la Flash Platform visto che ultimamente su questo argomento c'è molta disinformazione a riguardo. Se dovete rifiutarla per un progetto, fatelo essendo al corrente di queste informazioni (che non sarebbero neanche tutte), allo stesso modo nelle prossime settimane pubblicherò un articolo anche per fare chiarezza su HTML5 altro argomento avvolto da cattiva informazione dalle masse.