Processing
Processing è un linguaggio di programmazione basato su Java che consente di sviluppare diversi applicazioni come giochi, animazioni e contenuti interattivi. Basandosi su Java ne eredita completamente la sintassi, i comandi e il paradigma di programmazione orientata agli oggetti, in più mette a disposizione numerose funzioni ad alto livello per gestire facilmente l'aspetto grafico e multimediale. É distribuito sotto licenza Open Source ed è supportato dai sistemi operativi GNU/Linux, Mac OS X e Windows.
Caratteristiche
Il pacchetto, scariabile gratuitamente dal sito ufficiale mette a disposizione un ambiente di sviluppo integrato(IDE), e le varie creazioni (chiamate sketch) vengono organizzate in uno sketchbook. Ogni sketch contiene in genere, oltre alle classi che lo compongono, una cartella Data in cui viene inserito il materiale multimediale utile all'applicazione, ad esempio immagini, font e file audio. Ogni applicazione creata può inoltre essere esportata come Java applet.
Esempio di Sketch in Processing
In Processing ogni sketch deve contenere contenere almeno una classe principale, in cui sarà presente una funzione setup e una funzione draw, dove la prima viene eseguita solo una volta al lancio dell'applicazione, mentre la seconda viene eseguita per ogni frame.
float xoffset = 0.0;
float yoffset = 0.0;
void setup() {
size(400, 400);
PFont font = loadFont("Calibri-24.vlw");
textFont(font, 24);
smooth();
println("Stampo una sola volta su console");
}
void draw() {
background(128);
println("Stampo ad ogni frame su console");
text("Stampo ad ogni frame su schermo", xoffset, yoffset);
xoffset++;
yoffset++;
}
All'inizio vengono dichiarate le variabili globali, in questo caso due float che indicano rispettivamente lo spostamento x e y.
Nel metodo '''setup''', vengono settati diversi parametri, '''size''' indica le dimensioni della finestra dell'applicazione, '''smooth''' servirà invece per applicare l'[[Antialiasing]] ad eventuali primitive e figure all'interno dell'applicazione, la seconda riga del setup serve invece a creare una nuova istanza di '''PFont''' che in processing rappresenta font da utilizzare all'interno dell'applicazione, esso viene prima caricato tramite il metodo loadFont e in seguito viene adottato per il testo nella riga successiva.
In '''draw''' viene prima impostato il '''background''', ovvero lo sfondo, che deve essere reimpostato a ogni frame, altrimenti le animazioni verranno letteralmente impresse sullo sfondo, se esso non viene reimpostato.
'''text''' permette invece di far comparire un messaggio nell'applicazione, che adotterà il font scelto in draw, e verrà scritto a partire dalle coordinate 'xoffset' e 'yoffset', successivamente incrementate, dando così l'effetto finale di un testo da in alto a sinistra di muove fino in basso a destra.
Mobile Processing
É presente inoltre uno Spin-off del progetto, chiamato Mobile Processing, che consente di creare applicazioni per telefoni cellulari e palmari che utilizzano la tecnologia Java, sfruttando il Sun Java Wireless Toolkit.