Processing 404704 31337127 2008-07-06T03:34:32Z Meushi 412957 faute technique: une application java n'est pas compilée pour une machine en particulier. {{ébauche|informatique}} {{Infobox Langage de programmation | nom = '''Processing''' | logo = [[Image:Processing-logo.png]] | année = 2001 | auteurs = Ben Fry et Casey Reas | système d'exploitation = [[Multi-plateforme]] | license = [[GNU General Public License|GPL]] et [[GNU Lesser General Public License|LGPL]] | site web = [http://processing.org/ www.processing.org] }} '''Processing''' (autrefois orthographié '''Proce55ing''') est un [[langage de programmation]] et un [[Environnement de développement intégré|environnement de développement]] créé par [[Benjamin Fry]] et [[Casey Reas]], deux artistes [[États-Unis|américains]]. Processing est le prolongement "multimédia" de [[Design by numbers]], l'environnement de programmation graphique développé par [[John Maeda]] au Media Lab du [[Massachusetts Institute of Technology]]. Processing est tout particulièrement adapté à la création plastique et graphique interactive. Le logiciel fonctionne sur [[Macintosh]], sous [[Microsoft Windows|Windows]] et sous [[Linux]], car il est basé sur la plate-forme [[Java (langage)|Java]] — il permet d'ailleurs de programmer directement en langage Java.<br/> Processing est distribué sous licence [[GNU]].<br/>Les programmes réalisés avec Processing peuvent être lus par les navigateurs internet équipés du plug-in java, mais aussi sous forme d'applications indépendantes pour windows, linux ou mac (en réalité n'importe quelle machine disposant d'une [[Machine virtuelle Java]]). [[Image:Processing-ide.png|thumb|300px|L'environnement de développement Processing.]] === Philosophie === Le principe majeur de Processing est la simplicité, dans la mise en œuvre des programmes comme dans la syntaxe du langage. Adapté à la création graphique, Processing réclame moins d'efforts que Java pour effectuer des tâches simples telles que la modification d'une animation à intervalle régulier (qui permet des créations animées). Ses fonctionnalités sont limitées aux besoins des créateurs d'images 2D et 3D générées par programmation mais peuvent être étendues, par le biais de modules externes, à la capture d'un flux video, à la génération et à la manipulation de son, à l'interfaçage des ports d'entrées-sorties, etc. ===Syntaxe=== On peut écrire le traditionnel [[Hello world]] de cette manière : <source lang="java"> void setup() { println("Hello World!"); } </source> et même ainsi, sans la moindre déclaration préliminaire : <source lang="java"> println("Hello World!"); </source> Cependant, la méthode suivante est sans doute plus typique du fonctionnement de Processing : <source lang="java"> void setup() { PFont font = loadFont("myfont.vlw"); textFont(font,20); } void draw() { text("Hello World!", 30,50); } </source> Les gestionnaires ''setup()'' et ''draw()'' sont deux fonctions pré-définies très importantes dans processing. La première, setup(), est exécutée une seule fois au lancement du programme. La seconde, ''draw()'' est lancée à intervalle régulier, par défaut dix fois par seconde. Processing emploie un [[Typage fort|typage rigoureux]] et est [[sensibilité à la casse|sensible à la casse]]. La structure de ses fonctions de base (comparaisons, conditions, boucles, etc.) est familière pour les utilisateurs du C++ ou de Java.<br.> Par exemple, une condition s'évalue ainsi : <source lang="java"> if (a==1) { print("ok"); } </source> et une boucle se construit de cette façon : <source lang="java"> for(int a=0;a<255;a++) { print(a); } </source> ==Proce55ing== L'ancien nom de Processing, ''Proce55ing'', a été forgé ainsi car le [[nom de domaine]] ''Processing.org'' était pris et le site officiel a d'abord du exister à l'adresse ''Proce55ing.org''. À présent, les auteurs de Processing disposent du nom de domaine ''Processing.org'', ils n'utilisent plus l'ancienne forme du nom et en déconseillent l'usage. Cependant, de nombreuses personnes abrègent le nom en '''p5'''. ==Bibliographie== * ''Processing: A Programming Handbook for Visual Designers and Artists'', par Casey Reas et Ben Fry, MIT Press, 2007 * ''Processing: Creative Coding and Computational Art'', par Ira Greenberg, Friends of Ed, 2007 ==Voir aussi== * [[Processing.js]] ==Liens externes== * {{fr}} [http://www.ecole-art-aix.fr/rubrique81.html Cours en ligne] de l'Ecole d'Art d'Aix-en-Provence * {{en}} [http://processing.org/ Site officiel] [[Catégorie:Langage de programmation]] [[da:Processing]] [[de:Processing]] [[en:Processing (programming language)]] [[es:Processing]] [[fi:Processing]] [[ja:Processing]] [[ko:프로세싱 (프로그래밍 언어)]] [[nl:Processing]] [[no:Processing]]