Processing
| Processing | |
|---|---|
![]() |
|
Processing-IDE |
|
| Basisdaten | |
| Entwickler | Ben Fry and Casey Reas |
| Aktuelle Version | 1.5.1 (15. Mai 2011) |
| Betriebssystem | plattformunabhängig |
| Programmiersprache | Java |
| Kategorie | Programmiersprache |
| Lizenz | GPL bzw. LGPL (Freie Software) |
| processing.org | |
Processing ist eine auf die Einsatzbereiche Grafik, Simulation und Animation spezialisierte objektorientierte, stark typisierte Programmiersprache mit zugehöriger integrierter Entwicklungsumgebung. Sie wird in einem quelloffenen Projekt entwickelt, das am Massachusetts Institute of Technology in Boston von Ben Fry (Broad Institute) und Casey Reas (UCLA Design|Media Arts) initiiert wurde. Processing hat den Charakter einer stark vereinfachten Version der Programmiersprache Java, ermöglicht Interaktionen und visuelle Elemente zu programmieren und richtet sich vorwiegend an Gestalter, Künstler und Programmieranfänger.
Die Klassenbibliotheken der Programmiersprache zielen vor allem auf das Einsatzgebiet von Processing und berücksichtigen die Themen Video, Grafik, Grafikformate, Sound, Animation, Typographie, 3D, Simulation, Datenzugriff und -transfer, sowie Netzwerkprotokolle.
Im Jahr 2005 wurde Processing mit dem Prix Ars Electronica in der Kategorie Net Vision/Net Excellence ausgezeichnet.
Inhaltsverzeichnis |
Versionen [Bearbeiten]
| Version | Datum | Anmerkung |
|---|---|---|
| 1.0 | November 2008 | Erste bedeutende Beta-Version |
| 1.2.1 | November 2008 | |
| 1.5.1 | Mai 2011 | |
| 2.0 | September 2012 | Große Überarbeitung der gesamten Sprache |
Beispiel [Bearbeiten]
Ein Beispiel anhand eines Hallo-Welt-Programms:
println("Hello World!");
Dieses Programm produziert keinen Fehler, aber auch keinen sichtbaren Text. Der Text wird lediglich in der Konsole von Processing ausgegeben. Will man den Text im Ausgabefenster sichtbar machen, muss man die text()-Funktion verwenden:
void setup() { size(400,400); } void draw() { background(0); text("Hello World!", 30,50); }
Ähnliche Projekte [Bearbeiten]
- Design By Numbers
Processing basiert auf dem Experiment Design By Numbers Project, bei dem versucht wurde, Programmierung leicht unterrichtbar zu machen und viele Grundzüge mit Processing teilt.
Aus Processing hat sich das Projekt Wiring entwickelt. Es benutzt die Processing-IDE gemeinsam mit einer vereinfachten Version von C++, um Künstlern die Programmierung von Mikrokontrollern nahe zu bringen. Es gibt zwei separate Hardwareprojekte, Wiring und Arduino, die beide die Wiring-Umgebung und -sprache benutzen. Ein weiteres Projekt ist Fritzing, das Designer und Künstlern ermöglicht, ihre interaktiven Prototypen zu dokumentieren, um aus diesen ein fertiges Produkt zu gestalten.
- Mobile Processing
Eine weitere Abzweigung des Projektes ist Mobile Processing von Francis Li, das die Benutzung der Processing-Sprache und -IDE auf mobilen Geräten, die Java unterstützen, ermöglicht.
Processing.js ist eine vom jQuery-Entwickler John Resig verfaßte Javascript-Portiertung von Processing, speziell gestaltet für grafische Visualisierungen, Bilder sowie interaktive Inhalte und benötigt im Gegensatz zu Processing kein Java-Plugin. Sie benötigt hingegen die Webtechnologie HTML5, um mit JavaScript 2D- und 3D-Inhalte zu rendern. Dafür wird das HTML-Canvas-Element verwendet, auf dem alle Inhalte gezeichnet werden. Alle modernen Browser haben dieses Element implementiert.
- Spde
Das Akronym Spde steht für Scala Processing Development Environment. Spde ersetzt die Originalsyntax von Processing und den Präprozessor durch die Programmiersprache Scala (Programmiersprache), die auch auf der Java-Plattform läuft und somit dieselben Einschränkungen (statistische Objekte) aufweist.
- Processing in Clojure
Clj-Processing ist eine Umsetzung von Processing in Clojure, einer Sprache der Programmiersprachenfamilie Lisp, die auch auf der Java-Plattform läuft.
- Processing Monsters
Processing Monsters ist ein Projekt von Lukas Vojir mit dem Ziel, Interessierten die Sprache mit unterhaltenden Animationen beizubringen. Die "Monster" sind einfache grafische Programme, die in Schwarz und Weiß gestaltet sind und auf Mausbewegungen reagieren.
- iProcessing
iProcessing ermöglicht es, native iPhone-Anwendungen mit Processing zu programmieren. Möglich gemacht wurde dies durch die Integration der Bibliothek Processing.js und eines Javascript-Application-Framework in das iPhone.
Literatur [Bearbeiten]
- Hartmut Bohnacker, Benedikt Groß, Julia Laub, Claudius Lazzeroni: Generative Gestaltung. Entwerfen | Programmieren | Visualisieren - mit Processing. Hermann Schmidt, Mainz 2009. ISBN 3-87439-759-9
- Erik Bartmann: Processing, O'Reilly Basics. O'Reilly Verlag, 2010. ISBN 3-89721-997-2
Weblinks [Bearbeiten]
- offizielle Webpräsenz
- Deutschsprachiges Processing Skript und Lehrmittel
- Processing-Programmbeispiele bei medienkunst.ch
- Javascript-Implementation von Processing
- Ruby-Implementation von Processing
- Website zu H. Bohnacker, B. Groß, J. Laub, C. Lazzeroni: Generative Gestaltung, mit Quellcode und Beispielen
- deutschsprachiges Processing Tutorial
