2010-05-27 16 views
9

Die Sprachwebsite: http://processing.org/Wofür wird die Programmiersprache "Processing" verwendet?

Wofür verwenden Menschen Processing? Ich habe die Gelegenheit, dies in einem Klassenzimmer zu lernen und frage mich, ob es meine Zeit gut nutzen wird.

+0

Wird nicht nur C++ mit einem weniger gruseligen Namen "verarbeitet"? –

+5

@Greg: Nein, es ist Java mit einem vielleicht gruseligeren Namen - aber viele andere Skrupel sind weg. – walkytalky

+1

Es sind eigentlich nur ein paar nette Java-Klassen, die es leicht machen, Grafiken zu manipulieren, kombiniert mit einer beschissenen, aber einfach zu bedienenden IDE und ein wenig Vorverarbeitung. –

Antwort

4

Alles, was schön ist, könnte niemals Zeitverschwendung sein. :) Es ist wahrscheinlich das führende Werkzeug in seinem Raum, das so etwas wie "Deklarative Sprachen für die Visualisierung von Daten" wäre. (Obwohl mir gesagt wird, dass es mehr kann.) Es hat ein O'Reilly-Buch - das ist immer ein gutes Zeichen.

3

'Nützlich' und 'Schön' beschreiben nicht die Bibliothek (Verarbeitung ist keine Sprache), aber die darin geschriebenen Programme. Sie sind normalerweise schön, können aber auch nützlich sein. Vielleicht kann browsing it's showcase Ihnen einen Hinweis auf einige nützliche Programme geben. Die Verarbeitung eignet sich sehr gut für Visualisierungs-Apps und kann daher auch nützlich sein.

Nun, das ist für die Nützlichkeit der Anwendungen. Für die Nützlichkeit von Programmierung sie, ich denke, es ist eine ziemlich coole Möglichkeit, mehr visuell zu zeigen, wie einige grundlegende Konzepte von Programmen arbeiten, die Sie angenehm finden können. Die Verarbeitung wird heutzutage viel benutzt, um Grundlagen der Programmierung zu vermitteln; es wäre cool, Rekursion zu lernen, indem man Fraktale macht.

+3

Die verarbeitende Webseite sagt, sie habe "Eine Sprachsyntax, identisch mit Java, aber mit ein paar Modifikationen", und sie beschreiben sie als "Java-artige Programmiersprache", die "nur Java ist, aber mit einer neuen Grafik- und Utility-API mit einigen Vereinfachungen ". Ich habe es nie benutzt, aber es klingt für mich wie eine Sprache, zumindest in dem Sinne, dass Sprachen wie Objective C auch Sprachen sind, die (nicht zufällig) als Obermenge eines anderen vorkommen. – Ken

+0

Verarbeitung ist buchstäblich nur Java. Hölle, Sie können sogar Java-Bibliotheken importieren und sie verwenden. – JesseTG

20

Ja, es ist nützlich und keine Zeitverschwendung. Ich verwende Processing hauptsächlich zum Erstellen von Proof-of-Concepts für Visualisierungen und Grafikexperimente. Die Zeit zwischen einer Idee in meinem Kopf und einem funktionierenden Code auf meinem Laptop ist klein, hauptsächlich weil Processing in diesem Kurs nicht zu viele Hindernisse wirft.

Die Leichtigkeit des Experimentierens mit Dingen in der Verarbeitung ist ein Vorteil beim Lernen zu programmieren. Die Verarbeitung ist eigentlich ein Frontend für Java-Programme. Zur Laufzeit wird der Processing-Code in Java-Code übersetzt.

Die Verarbeitung kommt mit einer kleinen, aber leistungsfähigen Entwicklungsumgebung (IDE), einer ausgezeichneten Dokumentation, einer großen Bibliothek von Erweiterungen und einer beträchtlichen Anzahl von Beispielen und Demos.

Schließlich empfehle ich das Buch Processing: Ein Programmierhandbuch für visuelle Designer und Künstler von Casey Reas und Ben Fry, die Autoren von Processing. Es ist ein schönes Buch, sorgfältig bearbeitet und voller Quellen zur Inspiration.

+0

Wie stehen meine Chancen, dass Sie auch mit Blitz Basic gearbeitet haben und die Effektivität beider Sprachen vergleichen können? –

+0

@Dave, ich habe keine Erfahrung mit Blitz Basic. –

+0

ist dies immer noch eine gemeinsame Sprache? wenn nicht, gibt es da etwas ähnliches? –

16

Die Verarbeitung wurde für Hunderte von High-End-Projekten in einer Vielzahl von Bereichen verwendet, von Multimedia-Installationen bis zur Visualisierung von Informationen. Es ist kein Spielzeug oder eine pädagogische Übung, trotz seiner Wurzeln als Lehrmittel. Das Hauptanwendungsframework vereinfacht die meisten gängigen Multimedia-Anforderungen (OpenGL, Quicktime, PDF-Export, Kamera-Capture) und beseitigt den Projektaufwand für die langweilige Aufgabe, grundlegende Anwendungen einzurichten. Es verwendet eine erweiterbare Code-Struktur, die die Erstellung ermöglicht von Dutzenden von nützlichen Bibliotheken für alles von 3D-Import/Export bis zur komplexen Geometrie-Synthese.

Also nein, es ist keine Zeitverschwendung.

A Referenzen aus meiner eigenen Arbeit:

3

I Verarbeitung für viele interaktive Installationen verwendet haben, und fand wirklich nützlich es, weil Sie wirklich schnell Ergebnisse erzielen. Die Programmierung von visuellen Effekten ist wirklich einfach und elegant. Einige Beispiele zu sehen:

Wenn Sie mit einer Menge von Daten (viele Bitmaps, Videos handelt und Sound) könnte man seine Grenzen berücksichtigen ns. Ich habe es gerne benutzt und werde es auch weiterhin für bestimmte Projekte verwenden.

Also als Fazit: Verarbeitung ist keine Zeitverschwendung. Es ist eine wirklich nützliche Sprache für reale Anwendungen (natürlich in seiner eigenen Domäne).

1

Ich stimme dem überein, was die anderen Poster gesagt haben, aber ich würde hinzufügen, dass jedes Entwicklungswerkzeug Vor- und Nachteile hat. Es ist zwar leicht, direkt in die Verarbeitung zu kommen und sie zu visualisieren, aber der Nachteil besteht darin, dass es schwierig ist, Verarbeitungscode in ein anderes Projekt zu integrieren. Tools sind in Entwicklung, um dies zu vereinfachen, aber wenn Sie eine grafische Umgebung in Ihrer Anwendung verwenden möchten, wird die ganze Zeit, die Sie durch diese Verarbeitung gespart, wenn Prototyping bei der Neuanpassung des Codes oder der Umsetzung verloren geht.

1

Die Verarbeitung ist definitiv für viele Zwecke nützlich.

Ich denke the post on "Processing for Programmers" by Eliot Lash beantwortet Ihre Frage sehr gut und in vielen Details. Ich werde einige Highlights basierend auf meinen Erfahrungen unten geben, aber ich empfehle Ihnen, einen Blick auf den Beitrag zu werfen, der auch die praktischen Aspekte behandelt.

Ihre Frage hat mit der Wahrnehmung von Processing als einer einfachen Programmiersprache und Umgebung zu tun, die nicht viel Erfahrung zu verwenden erfordert. Die Verarbeitung ist jedoch auch ein nettes Werkzeug, das erfahrenen Entwicklern das Leben erleichtert, und die Fähigkeiten, die Sie mit Processing entwickeln, können definitiv außerhalb des Klassenzimmers oder des Prototyping-Kontextes nützlich sein.

Zunächst einmal, als eine Programmiersprache, fungiert die Verarbeitung lediglich als eine "Schicht" auf Java, die Dinge vereinfacht. Der gesamte Verarbeitungscode wird zuerst in Java-Code übersetzt. Dies bedeutet, dass Sie Java-Code schreiben und Java-Bibliotheken in Ihren Processing-Code innerhalb (oder außerhalb) der Processing-IDE importieren können. Pädagogisch hilft das Processing als eine "Gateway" -Programmiersprache in Java und anderen voll funktionsfähigen Sprachen. Sie können mit der Verarbeitung beginnen, in einer vertrauten Umgebung langsam in Java einsteigen und dann zu fortgeschritteneren Tools übergehen.

Sie können Verarbeitungsfunktionen auch in Ihre Java-Projekte importieren (siehe here und here). Auf diese Weise können Sie die Geschwindigkeit und Einfachheit von Processing für Multimedia usw. im Kontext komplexer Anwendungen nutzen, die eine vollständigere Programmiersprache erfordern.

Zusätzlich zu diesen angeborenen Funktionen haben die Menschen im Laufe der Jahre Werkzeuge, Bibliotheken usw. entwickelt, die Ihre Verarbeitungsfähigkeiten in vielen Kontexten nützlich machen können. Einige Beispiele:

  • Web/Browser:Processing.js ist eine JavaScript-Bibliothek, die Sie Code ausführen Verarbeitung lässt wörtlich im Browser. p5.js ist eine Bibliothek zum Schreiben von JavaScript basierend auf den Prinzipien und Funktionen der Verarbeitung.
  • Mobil: Sie können Android-Apps mit Processing unter Verwendung der IDE in "Android mode" entwickeln.
  • Elektronik, IoT ...: Die Arduino Programmiersprache und Umgebung sind sehr, sehr ähnlich zu Processing.