Processing

from Wikipedia, the free encyclopedia
Processing

Processing logo
Screenshot
Screenshot of the Processing IDE
Basic data

developer Ben Fry and Casey Reas
Publishing year 2001
Current  version 3.5.4
( January 17, 2020 )
operating system platform independent
programming language Java
category programming language
License GPL or LGPL ( Free Software )
processing.org

Processing is an object-oriented , strongly typed programming language with an associated integrated development environment . The programming language specializes in the areas of graphics , simulation and animation . Processing is being developed in an open source project initiated at the Massachusetts Institute of Technology by Ben Fry (Broad Institute) and Casey Reas (UCLA Design | Media Arts). Processing has the character of a greatly simplified version of the Java programming language , enables interactions and visual elements to be programmed, and is aimed primarily at designers , artists and novice programming.

The class libraries of the programming language are primarily aimed at the application area of ​​processing and take into account the topics of video, graphics, graphic formats, sound, animation, typography, 3D, simulation, data access and transfer, as well as network protocols.

In 2005, Processing was awarded a Golden Nica by the Prix ​​Ars Electronica in the Net Vision / Net Excellence category.

Versions

version date annotation
1.0 November 2008 First major beta version
1.5 April 2011 Simplified development environment for Android devices
2.0 September 2012 Major overhaul of the entire language
2.1 October 2013 u. a. Java 7 in all platforms, embedding the JRE in exported applications
3.0 September 2015 Major revision (including rendering, editor, interface)

example

An example using a hello world program :

  println("Hello World!");

This program produces no errors, but also no visible text. The text is only output in the Processing console. If you want to make the text visible in the output window, you have to use the text () method:

  text("Hello World!", 0, 10);

Two commonly used methods in Processing are the setup () and draw () methods. Setup is used to generate the drawing area and to define start parameters. The Draw () method is repeated continuously and can be changed by setting the frame rate in the Setup () method.

  //Zeichenfläche vorbereiten
  void setup(){
    size(500,500);
  }

  void draw(){
    text("Hello World!", 0, 10);

    //Kreise an zufälligen Positionen zeichnen
    ellipse (random(50, 200), random(50, 200), 30, 30);
  }

Name: Processing, Proce55ing, P5

Because the processing.org domain was not available at the beginning , Reas and Fry switched to the proce55ing.net domain using Leetspeak . The abbreviation P5 of this is still alive , for example in the address p5js.org . P55 is not used.

Tools

Similar projects

  • Design By Numbers
    Processing is based on the Design By Numbers Project experiment, which sought to make programming easy to teach and shares many of the basic principles with Processing.
  • iProcessing
    iProcessing enables native iPhone applications to be programmed with processing. This was made possible by integrating the Processing.js library and a JavaScript application framework into the iPhone.
  • Mobile Processing
    Another branch of the project is Mobile Processing by Francis Li, which enables the processing language and IDE to be used on mobile devices that support Java.
  • openFrameworks
    Framework based on the programming language C ++ , which offers comparable functionality and is strongly oriented towards processing.
  • Processing.js
    Processing.js is a Javascript port of Processing written by jQuery developer John Resig , specially designed for graphic visualizations, images and interactive content and, unlike Processing, does not require a Java plug-in. However, it requires the web technology HTML5 to render 2D and 3D content with JavaScript. The HTML canvas element is used for this, on which all content is drawn. All modern browsers have implemented this element.
  • Processing in Clojure
    Clj-Processing is an implementation of Processing in Clojure, a language of the Lisp programming
    language family that also runs on the Java platform.
  • Processing Monsters
    Processing Monsters is a project by Lukas Vojir with the aim of teaching the language with entertaining animations. The "monsters" are simple graphic programs that are designed in black and white and react to mouse movements.
  • Spde
    The acronym Spde stands for Scala Processing Development Environment . Spde replaces the original syntax of Processing and the preprocessor with the Scala programming language
    (programming language) , which also runs on the Java platform and therefore has the same restrictions (static objects).
  • Wiring , Arduino , Energia , Fritzing
    Processing developed into the Wiring project. It uses the Processing IDE along with a simplified version of C ++ to teach artists how to program microcontrollers. There are three separate hardware projects, Wiring, Arduino, and Energia that use the Wiring environment and language. Another project is Fritzing, which enables designers and artists to document their interactive prototypes in order to create a finished product from them.

literature

Web links

Commons : Processing  - collection of images, videos and audio files

Individual evidence

  1. Release 3.5.4 . January 17, 2020 (accessed January 18, 2020).
  2. ^ Ars Electronica Archive. Retrieved June 16, 2015 .