Struktur überarbeitet, Geschichte, neuere Projekte (insbesondere von der Processing Foundation) und verschiedene Quellen ergänzt. Abschnitte zu nicht mehr weiterentwickelten Projekten entfernt.
Die Klassenbibliotheken der Programmiersprache zielen vor allem auf das Einsatzgebiet von Processing ab und berücksichtigen die Themen Video, Grafik, Grafikformate, Sound, Animation, Typographie, 3D, Simulation, Datenzugriff und -transfer, sowie Netzwerkprotokolle.<ref>{{Internetquelle |url=https://processing.org/reference/libraries/ |titel=Libraries |sprache=en-US |abruf=2024年10月11日}}</ref>
Die Klassenbibliotheken der Programmiersprache zielen vor allem auf das Einsatzgebiet von Processing ab und berücksichtigen die Themen Video, Grafik, Grafikformate, Sound, Animation, Typographie, 3D, Simulation, Datenzugriff und -transfer, sowie Netzwerkprotokolle.<ref>{{Internetquelle |url=https://processing.org/reference/libraries/ |titel=Libraries |sprache=en-US |abruf=2024年10月11日}}</ref>
Darüber hinaus wurde Processing auf verschiedene andere Programmiersprachen und Plattformen übertragen(削除) und kann dadurch auch für Hardware-nahe interaktive Projekte mit [[Sensor|Sensoren]] und [[Aktor|Aktoren]] verwendet werden (削除ここまで).(削除) <ref>{{Internetquelle |url=https://www.arduino.cc/education/visualization-with-arduino-and-processing/ |titel=Visualization with Arduino and Processing |abruf=2024年10月11日}}</ref> (削除ここまで)
Darüber hinaus wurde Processing auf verschiedene andere Programmiersprachen und Plattformen übertragen.
== Geschichte ==
== Geschichte ==
Zeile 53:
Zeile 53:
|u. a. Java 17, ein Video-Editor und Stabilitätsverbesserungen<ref>{{Internetquelle |url=https://github.com/benfry/processing4/wiki/Changes-in-4.0 |titel=Changes in 4.0 |sprache=en |abruf=2024年10月11日}}</ref>
|u. a. Java 17, ein Video-Editor und Stabilitätsverbesserungen<ref>{{Internetquelle |url=https://github.com/benfry/processing4/wiki/Changes-in-4.0 |titel=Changes in 4.0 |sprache=en |abruf=2024年10月11日}}</ref>
Mit p5.js wurde eine Erweiterung für [[JavaScript]] entwickelt, welche die Prinzipien und Funktionen von Processing mit [[HTML5|Webtechnologien]] umsetzt.<ref>{{Internetquelle |url=https://p5js.org/about/ |titel=About p5.js |sprache=en |abruf=2024年10月11日}}</ref> Es hat Processing.js abgelöst, welches eine vom [[jQuery]]-Entwickler [[John Resig]] verfasste JavaScript-Portierung von Processing war. Es ist auch als iOS-App verfügbar.<ref>{{Internetquelle |url=https://processing-app.org/ |titel=Processing + p5.js iCompiler for iOS |sprache=en |abruf=2024年10月11日}}</ref>
Processing.py ist ein Wrapper für die Java-Version, der eine Programmierung in [[Python (Programmiersprache)|Python]] erlaubt.<ref>{{Internetquelle |url=https://py.processing.org/ |titel=Python Mode for Processing |abruf=2024年10月11日}}</ref> Offiziell Unterstützt werden darüber hinaus Versionen für [[Android (Betriebssystem)|Android]]<ref>{{Internetquelle |url=https://android.processing.org/ |titel=Processing for Android |abruf=2024年10月11日}}</ref> und [[Raspberry Pi]]<ref>{{Internetquelle |autor=Maks Surguy |url=https://pi.processing.org/get-started/ |titel=Getting Started |datum=2017年08月20日 |sprache=en |abruf=2024年10月11日}}</ref>, welche zusätzlich einen Zugriff auf die jeweilige Hardware ermöglichen.
Aus Processing hat sich das Projekt [[Wiring (Software)|Wiring]] entwickelt. Es benutzt die Processing(追記) Entwicklungsumgebung (追記ここまで) gemeinsam mit einer vereinfachten Version von [[C++]], um Künstlern die Programmierung von Mikrokontrollern nahezubringen.<ref>{{Internetquelle |url=https://wiring.org.co/about.html |titel=About \ Wiring |abruf=2024年10月11日}}</ref>
Weiterentwicklungen von Wiring sind [[Arduino-Plattform|Arduino]] und [[Energia (Plattform)|Energia]], die diese jeweils auf weitere Mikrocontroller übertragen haben.<ref>{{Internetquelle |url=https://energia.nu/ |titel=What is Energia and how did it get started |werk=energia.nu |hrsg=Energia(追記) |abruf=2024年10月11日}}</ref> Mit diesen sind auch interaktive Projekte mit [[Sensor|Sensoren]] und [[Aktor|Aktoren]] möglich.<ref>{{Internetquelle |url=https://www.arduino.cc/education/visualization-with-arduino-and-processing/ |titel=Visualization with Arduino and Processing (追記ここまで) |abruf=2024年10月11日}}</ref>
== Entwicklungsumgebung ==
== Entwicklungsumgebung ==
[[Datei:Processing moire 6lignes.png|alternativtext=Editor der Processing IDE mit Quellcode und dazu generierter Bildausgabe.|mini|Editor der Processing IDE mit zum Quellcode generierter Vorschau]]
Processing kombiniert die Programmiersprache mit einer integrierten Entwicklungsumgebung, die speziell für Menschen entwickelt wurde, die in den Bereichen visuelle Kunst, Design und Elektronik arbeiten. Sie wurde entwickelt, um das Schreiben von Code zugänglicher und benutzerfreundlicher zu gestalten.<ref name=":0" />
Processing kombiniert die Programmiersprache mit einer integrierten Entwicklungsumgebung, die speziell für Menschen entwickelt wurde, die in den Bereichen visuelle Kunst, Design und Elektronik arbeiten. Sie wurde entwickelt, um das Schreiben von Code zugänglicher und benutzerfreundlicher zu gestalten.<ref name=":0" />
Die Processing IDE kann für eine Vielzahl von Projekten verwendet werden. Sie ist besonders nützlich für die Erstellung von interaktiven Grafiken, Animationen und Spielen. Die Sprache bietet eine einfache Syntax und eine Vielzahl von Funktionen, die das Erstellen von visuellen Projekten erleichtern. In den Editor ist direkt eine Vorschau integriert, in der zwei- und dreidimensionale Grafiken angezeigt werden können.<ref>{{Internetquelle |url=https://processing.org/environment/ |titel=Environment |sprache=en-US |abruf=2024年10月11日}}</ref>
Die Processing IDE kann für eine Vielzahl von Projekten verwendet werden. Sie ist besonders nützlich für die Erstellung von interaktiven Grafiken, Animationen und Spielen. Die Sprache bietet eine einfache Syntax und eine Vielzahl von Funktionen, die das Erstellen von visuellen Projekten erleichtern. In den Editor ist direkt eine Vorschau integriert, in der zwei- und dreidimensionale Grafiken angezeigt werden können.<ref>{{Internetquelle |url=https://processing.org/environment/ |titel=Environment |sprache=en-US |abruf=2024年10月11日}}</ref>
== (削除) Beispiel (削除ここまで) ==
== (追記) Verwendung (追記ここまで) ==
Ein Beispiel anhand eines [[Hallo-Welt-Programm]]s:
Ein Beispiel anhand eines [[Hallo-Welt-Programm]]s:
Mit p5.js wurde eine Erweiterung für [[JavaScript]] entwickelt, welche die Prinzipien und Funktionen von Processing mit [[HTML5|Webtechnologien]] umsetzt.<ref>{{Internetquelle |url=https://p5js.org/about/ |titel=About p5.js |sprache=en |abruf=2024年10月11日}}</ref> Es hat Processing.js abgelöst, welches eine vom [[jQuery]]-Entwickler [[John Resig]] verfasste JavaScript-Portierung von Processing war. Es ist auch als iOS-App verfügbar.<ref>{{Internetquelle |url=https://processing-app.org/ |titel=Processing + p5.js iCompiler for iOS |sprache=en |abruf=2024年10月11日}}</ref>
Datei:Mandelbrot set - Stripe Average Coloring.png|alternativtext=In Processing umgesetzte Mandelbrotmenge |Mandelbrotmenge. Der Quellcode ist auf dem [[commons:File:Mandelbrot_set_-_Stripe_Average_Coloring.png|Commons-Eintrag]] zu finden
Processing.py ist ein Wrapper für die Java-Version, der eine Programmierung in [[Python (Programmiersprache)|Python]] erlaubt.<ref>{{Internetquelle |url=https://py.processing.org/ |titel=Python Mode for Processing |abruf=2024年10月11日}}</ref> Offiziell Unterstützt werden darüber hinaus Versionen für [[Android (Betriebssystem)|Android]]<ref>{{Internetquelle |url=https://android.processing.org/ |titel=Processing for Android |abruf=2024年10月11日}}</ref> und [[Raspberry Pi]]<ref>{{Internetquelle |autor=Maks Surguy |url=https://pi.processing.org/get-started/ |titel=Getting Started |datum=2017年08月20日 |sprache=en |abruf=2024年10月11日}}</ref>, welche zusätzlich einen Zugriff auf die jeweilige Hardware ermöglichen.
Aus Processing hat sich das Projekt [[Wiring (Software)|Wiring]] entwickelt. Es benutzt die Processing(削除) -IDE (削除ここまで) gemeinsam mit einer vereinfachten Version von [[C++]], um Künstlern die Programmierung von Mikrokontrollern nahezubringen.<ref>{{Internetquelle |url=https://wiring.org.co/about.html |titel=About \ Wiring |abruf=2024年10月11日}}</ref>
Weiterentwicklungen von Wiring sind [[Arduino-Plattform|Arduino]] und [[Energia (Plattform)|Energia]], die diese jeweils auf weitere Mikrocontroller übertragen haben.<ref>{{Internetquelle |url=https://energia.nu/ |titel=What is Energia and how did it get started |werk=energia.nu |hrsg=Energia |abruf=2024年10月11日}}</ref>
== Siehe auch ==
== Siehe auch ==
* [[openFrameworks]]
* [[openFrameworks]]
Aktuelle Version vom 11. Oktober 2024, 17:19 Uhr
Dieser Artikel behandelt die Programmiersprache; zum seismischen Processing siehe Processing (Seismik).
Die Klassenbibliotheken der Programmiersprache zielen vor allem auf das Einsatzgebiet von Processing ab und berücksichtigen die Themen Video, Grafik, Grafikformate, Sound, Animation, Typographie, 3D, Simulation, Datenzugriff und -transfer, sowie Netzwerkprotokolle.[4]
Darüber hinaus wurde Processing auf verschiedene andere Programmiersprachen und Plattformen übertragen.
Processing wurde von Maedas Studenten Ben Fry und Casey Reas (heute UCLA Professor für Design Media Arts) initiiert. Im August 2001 wurde die erste Alpha-Version veröffentlicht[6], damals unter Verwendung von Leetspeak mit dem Namen proce55ing, da die Domäne processing.org nicht verfügbar war.[7]
Im Jahr 2005 wurde Processing mit einer Goldenen Nica des Prix Ars Electronica in der Kategorie Net Vision/Net Excellence ausgezeichnet.[8] Ben Fry wurde 2011 mit dem National Design Award des Cooper Hewitt, Smithsonian Design Museum unter Verweis auf seine Arbeit an Processing ausgezeichnet.[9]
Die Koordination der Weiterentwicklung wurde 2012 an die hierfür gegründete Processing Foundation überführt.[3]
Die 2012 gegründete Processing Foundation entwickelt Processing und damit zusammenhängende Projekte weiter.[3]
Mit p5.js wurde eine Erweiterung für JavaScript entwickelt, welche die Prinzipien und Funktionen von Processing mit Webtechnologien umsetzt.[11] Es hat Processing.js abgelöst, welches eine vom jQuery-Entwickler John Resig verfasste JavaScript-Portierung von Processing war. Es ist auch als iOS-App verfügbar.[12]
Processing.py ist ein Wrapper für die Java-Version, der eine Programmierung in Python erlaubt.[13] Offiziell Unterstützt werden darüber hinaus Versionen für Android[14] und Raspberry Pi[15], welche zusätzlich einen Zugriff auf die jeweilige Hardware ermöglichen.
Aus Processing hat sich das Projekt Wiring entwickelt. Es benutzt die Processing Entwicklungsumgebung gemeinsam mit einer vereinfachten Version von C++, um Künstlern die Programmierung von Mikrokontrollern nahezubringen.[16]
Weiterentwicklungen von Wiring sind Arduino und Energia, die diese jeweils auf weitere Mikrocontroller übertragen haben.[17] Mit diesen sind auch interaktive Projekte mit Sensoren und Aktoren möglich.[18]
Processing kombiniert die Programmiersprache mit einer integrierten Entwicklungsumgebung, die speziell für Menschen entwickelt wurde, die in den Bereichen visuelle Kunst, Design und Elektronik arbeiten. Sie wurde entwickelt, um das Schreiben von Code zugänglicher und benutzerfreundlicher zu gestalten.[3]
Die Processing IDE kann für eine Vielzahl von Projekten verwendet werden. Sie ist besonders nützlich für die Erstellung von interaktiven Grafiken, Animationen und Spielen. Die Sprache bietet eine einfache Syntax und eine Vielzahl von Funktionen, die das Erstellen von visuellen Projekten erleichtern. In den Editor ist direkt eine Vorschau integriert, in der zwei- und dreidimensionale Grafiken angezeigt werden können.[19]
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()-Methode verwenden:
text("Hello World!",0,10);
Zwei häufig verwendete Methoden in Processing sind die setup()- und die draw()-Methode. Setup wird verwendet, um die Zeichenfläche zu generieren und Startparameter festzulegen. Die Draw()-Methode wird durchgehend wiederholt und kann durch die Einstellung der Framerate in der Setup()-Methode geändert werden.
//Zeichenfläche vorbereitenvoidsetup(){size(500,500);}voiddraw(){text("Hello World!",0,10);//Kreise an zufälligen Positionen zeichnenellipse(random(50,200),random(50,200),30,30);}