Macromedia
Oggi abbiamo rilasciato l'alpha pubblica della linea di prodotto e tecnologie Macromedia Flex 2. Questo articolo esamina quello che abbiamo rilasciato, quali sono le relazioni tra Flex e l'authoring di Flash e come grafici e sviluppatori possono integrarli per creare contenuti ricchi ed espressivi per la prossima generazione di Macromedia Flash Player.
Come sviluppatore, sono cresciuto da solo con Flash. Iniziai con FLash 3 (non un vero scripting), poi con la sintassi a slash di Flash 4 (ugh!), Smart Clip con Flash 5 e per finire con componenti riutilizzabili e un linguaggio di programmazione più copleto in FLash 6 e 7. Flash è sempre stato principalmente uno strumento creativo e un ambiente di sviluppo che è sempre sembrato non sufficiente per gli sviluppatori (e spesso i grafici avebbero fatto con meno). Nonostante le caratteristiche di espressività di Flash e la possbilità di distribuire le applicazioni praticamente ovunque, è sempre stato complesso sviluppare applicazioni con uno strumento progettato dalla base come strumento creativo.
Questo è il motivo per cui sono così entusiasta di Flex 2. Posso sviluppare per la Piattaforma Flash con un ambiente e framework progettato dalla base per sviluppatori per la Piattaforma Flash, mentre allo stesso tempo avvantaggiarsi delle caratteristiche creative ed espressive dell'ambiente di Flash.
Prima di tutto, cosa abbiamo annunciato? Cos'è la line di prodotto Flex 2?
Una cosa che probabilmente avete già intuito è che "Flex" ora è orientato ad un pubblico più vasto di quanto non fosse nel passato. Dove Flex veniva utilizzato per un server di livello enterprise che permettesse agli sviluppatori di creare applicazioni ricche ed espressive (Flex Server 1.5), ora si riferisce ad una famiglia di prodotti e tecnologie (Flex Builder, Flex Framework, Flex Enterprise Services ActionScript 3.0) che permette a tutti gli sviluppatori di creare applicazioni ricche ed espressive che adottano l'ubiquità del Flash Player e possono funzionare ovunque.
Solo per assicurarci che questa cosa non passi inosservata:
NON AVETE BISOGNO DI FLEX SERVER PER CREARE APPLICAZIONI CON IL FLEX FRAMEWORK.
Naturalmente potete creare applicazioni con il Framework di Flex, che si avvantaggia di molte funzionalità del Flex server (ora chiamato Flex Enterprise Services).
Fondamentalmente, ora potete utilizzare Flex Builder 2 per costruire applicazioni con ActionScript 3.0 e Flex Framework. Flex Builder può complare quelle applicazioni (in un file SWF) e potete distribuire questi file SWF come fareste per qualunque altro SWF (es: semplicemente caricatelo sul server).
Ora, se siete principalmente sviluppatori Flash, la prima cosa su cui cade la vostra attenzione è il riferimento a ActionScript 3.0 (è stata la prima cosa che ha catturato la mia attenzione). Questa è una nuova versione di ActionScript nel Flash Player 8.5, che si avvantaggia di una nuova Virtual Machine (VM) nel player.
Flash è stato inizialmente sviluppato come strumento di animazione e come plug-in, con il passare degli anni si è evoluto per fornire maggiori caratteristiche di programmazione e di sviluppo (aggiungendo supporto per scripting, API per gli sviluppatori e sintassi di scripting più strutturate). Il cuore del player era concepito per animazioni ed altri contenuti espressivi e non ottimizzato per lo sviluppo runtime.
Dopo anni di ottimizzazione delle performance del player, abbiamo capito che per portare il player ad un livello superiore avremmo dovuto ricostruire la virtual machine dall'inizio e creare un player che fosse ottimizzato per l'esecuzione del codice come lo era per i frame e il rendering dei vettori. Questo ci ha portato a creare una nuova virtual machine che è presente nell'alpha del Flash Player 8.5 e a sviluppare ActionScript 3.0 da eseguire sulla nuova VM.
ActionScript 3.0 è stato completamente riscritto assieme alla nuova VM del player. Questo ci ha permesso di pulire molte cose, ottimizzare le performance e l'utilizzo della memoria e realizzare un linguaggio più robusto e produttivo. Comunque, la sintassi del linguaggio non è cambiata molto. Se avete familiarità con ActionScript 2 sarete subito in grado di comprendere il codice ActionScript 3.0. Per esempio, di seguito una semplice classe:
package com.macromedia.foo
{
import flash.util.trace;
public class MyClass extends MyBaseClass
{
public function MyClass()
{
sayHello();
}
protected function sayHello():Void
{
trace("Hello!");
}
}
}
Quali sono i vantaggi di ActionScript 3.0 per gli sviluppatori Flash? Eccone un paio:
Naturalmente, potete accedere ai Macromedia Labs* e scaricare tutti gli elementi e iniziare, quindi non ho intenzione di scendere nei dettagli su questo.
Ok. So quello che state pensando. Ho appena acquistato Macromedia Flash Professional 8 e lo adoro. Lo strumento è molto robusto, lo so utilizzare e le nuove funzionalità sono fantastiche. Flex Builder e l'authoring di Flash possono lavorare insieme?
Si! Potete utilizzare l'authoring di Flash assieme a Flex Builder e utilizzare tutte le nuove cose sin da adesso. Da quando Flax Builder supporta progetti solo ActionScript, potete utilizzare l'authoring di Flash per creare i vostri contenuti e utilizzare questi elementi nei vostri progetti ActionScript con FlexBuilder e compilare l'applicazione per il Flash Player 8.5. Questo è un flusso di lavoro simile a quello che gli sviluppatori utilizzano oggi servendosi di editor esterni come Eclipse, SE|PY o PrimalScript.
Per esempio, se state lavorando su di un gioco che può trarre vantaggio dai miglioramenti delle performance e produttività di ActionScript 3.0 e Flash Player 8.5.
Potete creare tutti gli elementi del gioco in Flash 8 Professional. Questo comprende grafica, video, animazioni ecc. Potete poi fare tutta la vostra programmazione in ActionScript e Flex Builder 2 e includere gli elementi di Flash nell'swf al momento della compilazione (ActionScript 3 ha il supporto per incorporare elementi e associarli a una classe ActionScript).
Il risultato finale è un file SWF che contiene tutto il codice e gli elementi per il vostro gioco, ma che si avvantaggia di ActionScript 3.0 oltre alle nuove API del Player e della virtual machine.
Come bonus, Flex Builder 2 include anche una linea di comando di compilazione (Hallelujah!), che vi permetterà di compilare i vostri progetti dalla linea di comando o da altri editor.
Naturalmente, l'authoring di Flash avrà un supporto completo per ActionScript 3.0 e stiamo già pianificando e lavorando alla prossima versione dell'authoring di Flash (nome in codie "Blaze"). Siccome è ancora in una fase iniziale di sviluppo, non siamo in grado di dire quando Blaze sarà rilasciato (il normale ciclo di sviluppo dell'Authoring di Flash è da 18 a 24 mesi). Rilasceremo una versione alpha di Blaze a primavera 2006 che includerà il supporto per ActionScript 3.0. Questo sarà una pre-release versione alpha (non un update di Flash 8) e sarà disponibile a chiuunque abbia acquistato Flash Professional 8 e o Macromedia Studio 8.
Un paio di persone mi ha contattato su IM lamentandosi che l'authoring di Flash non supporterà il nuovo player e il nuovo linguaggio quando il player sarà rilasciato in primavera. Devo ammettere che questo è stato anche il mio primo pensiero quando ho sentito questa novità. In passato, l'authoring di Flash e il player erano strettamente collegati con sia il player e l'authoring che seguivano gli stessi cicli di sviluppo e distribuzione.
La stessa cosa accadrà per l'authoring di Flash quando rilasceremo il Flash Player 8.5 a primavera. L'authoring di Flash non supporterà tutte le funzioni del player fino alla prossima versione completa dell'autoring di Flash (nonostante, come menzionionato in precedenza, ci sarà una versione alpha pubblica che lo supporta).
Tutto ciò è una conseguenza della crescita e del successo della piattaforma. Il pensiero finale è che il player può essere innovato più velocemente e i prodotti che si basano sul player possono avere il tempo di implementare le nuove funzioni in un modo sensato per i loro utenti.
Un vantaggio di questo è che per il momento in cui rilasceremo Blaze, il Flash Player 8.5 sarà già disponibile da molto tempo. Ciò può significare che per il giorno in cui Blaze sarà distribuito, il player potrebbe avere già raggiunto il 50-70% di adozioni (in base alle statistiche storiche dell'adozione del player) Questo potrebbe essere un vantaggio per Flash e assicurerebbe che le nuove funzioni possano essere utilizzate già dal giorno in cui Blaze è disponibile.
Ora che abbiamo parlato dell'authoring di Flash e di Flex 2 relazionati e complementari tra di loro, è ora di iniziare a provare. Entrate nei labs.macromedia.com* e scaricate Flex Builder e Flash Player 8.5.
Ricordatevi solo che è una versione alpha. Questo significa che ci saranno alcuni problemi e alcune cose non funzioneranno. Non abbiamo mai rilasciato i software con questo anticipo prima dora, ma confidiamo nel fatto che per noi è un vantaggio ottenere il vostro feedback e per voi vedere quello che sta accadendo, questo porterà ad un grande risultato.
Abbiamo rilasciato moltissime informazioni su Flex 2. Di seguito alcuni collegamenti per iniziare: