Visuelle Programmiersprache

Ein einfacher benutzerdefinierter Block im Snap! visuelle Programmiersprache, die auf KratzenBerechnung der Summe aller Zahlen zwischen a und b

Im Computer, a visuelle Programmiersprache (Visuelles Programmiersystem, Vpl, oder, VPS) ist jeder Programmiersprache Dadurch können Benutzer erstellen Programme Durch Manipulation von Programmelementen grafisch anstatt sie anzugeben textuell.[1] Eine VPL ermöglicht die Programmierung mit visuellen Ausdrücken, räumlichen Anordnungen von Text und grafischen Symbolen, die entweder als Elemente von verwendet werden Syntax oder Sekundärnotation. Zum Beispiel viele VPLs (bekannt als Datenfluss oder Diagrammatische Programmierung)[2][3] basieren auf der Idee von "Boxen und Pfeilen", in denen Kästchen oder andere Bildschirmobjekte als Entitäten behandelt werden, die durch Pfeile, Linien oder Bögen verbunden sind, die Beziehungen darstellen.

Definition

VPLs können nach Art und Ausmaß des verwendeten visuellen Ausdrucks weiter eingestuft werden, in iconbasierte Sprachen, formbasierte Sprachen und Diagrammsprachen. Visuelle Programmierumgebungen bieten grafische oder ikonische Elemente, die von Benutzern auf interaktive Weise gemäß einer spezifischen räumlichen Grammatik für die Programmkonstruktion manipuliert werden können.

Das allgemeine Ziel von VPLs ist es, die Programmierung für Anfänger zugänglicher zu machen und Programmierer auf drei verschiedenen Ebenen zu unterstützen[4]

  • Syntax: VPLS verwenden Symbole/Blöcke, Formulare und Diagramme, die versuchen, das Potenzial von syntaktischen Fehlern zu reduzieren oder sogar zu beseitigen, um die Anordnung von Programmierprimitiven zur Erstellung gut geformter Programme zu erstellen.
  • Semantik: VPLs können einige Mechanismen zur Verfügung stellen, um die Bedeutung von Programmierprimitiven offenzulegen. Dies könnte Hilfefunktionen umfassen, die Dokumentationsfunktionen für Programmiersprachen bereitstellen.
  • Pragmatik: VPLs unterstützen die Studie darüber, was Programme in bestimmten Situationen bedeuten. Mit dieser Unterstützung können Benutzer Artefakte mit einem VPL in einen bestimmten Zustand einsetzen, um zu untersuchen, wie das Programm auf diesen Zustand reagiert. Beispiele: in Agentenblätter oder AgentCubes Benutzer können Spiele oder Simulationen in einen bestimmten Zustand einstellen, um zu sehen, wie das Programm reagiert. Mit dem Thymio Programmiersprache Benutzer können einen Roboter in einen bestimmten Zustand bringen, um zu sehen, wie er reagiert, d. H. Die Sensoren werden aktiviert.

Aktuelle Entwicklungen versuchen, den visuellen Programmieransatz mit zu integrieren Datenflow -Programmierung Sprachen, um entweder einen sofortigen Zugriff auf die Programmstaat, was zu Online -Debugging oder automatischer Programmgenerierung und -Dokumentation führt. Datenflowsprachen erlauben auch Automatische Parallelisierung, was wahrscheinlich zu einer der größten Programme der Zukunft der Zukunft wird.[5]

Das Visual Basic, Visuell c#, Visuell j# usw. Sprachen der Microsoft Visual Studio Ide sind keine visuellen Programmiersprachen: Die Darstellung von Algorithmen usw. ist textuell, obwohl die IDE die Bearbeitungs- und Debugging -Aktivitäten mit einer reichhaltigen Benutzeroberfläche verschönert. Eine ähnliche Überlegung gilt für die meisten anderen Schnelle Anwendungsentwicklung Umgebungen, die normalerweise a unterstützen Formarchitektur und manchmal haben auch grafische Tools, um den Kontrollfluss und Datenabhängigkeiten zu veranschaulichen (aber nicht definieren).

Parser Für visuelle Programmiersprachen können mit Verwendung implementiert werden Grammatiken für Graphen.[6][7]

Liste der visuellen Sprachen

Das Folgende enthält eine Liste bemerkenswerter visueller Programmiersprachen.

Lehrreich

Multimedia

Videospiele

  • Babylon.js Hat einen Knotenmaterialeditor, mit dem Shader, prozedurale Texturen, Partikelsysteme und Nachverarbeitungseffekte erstellt werden können.[14]
  • Blender Game Engine (Grafischer Logik -Editor)
  • Clickteam Fusion, eine 2D -Spielerstellungssoftware mit Event -Editor -System, die von Clctteam Sarl entwickelt wurde und ursprünglich als Klik N 'Play, The Games Factory und Multimedia Fusion 2 bekannt ist
  • Konstruieren 2-3 sind HTML5-basierte 2D-Spielredakteure, die von Scirra Ltd. entwickelt wurden.
  • Cryengine hat eine knotenbasierte visuelle Programmiersprache namens Flowgraph.
  • Träume, was auf PlayStation läuft, hat eine umfangreiche visuelle Sprache, mit der Spieler jede Art von Spiel erstellen können
  • Game Builder Garage, ein 3D- und 2D -Spielerstellungstool für die Nintendo Switch, entwickelt von Nintendo.
  • Gamemaker Studio, hat ein Drag & Drop -Spielerstellungssystem, das von Yoyo Games entwickelt wurde.
  • Gamesalad ist ein visuelles Tool zur Erstellung von Spielen, das von Gamesalad, Inc. entwickelt wurde.
  • GDevelop ist ein visuelles Tool zur Erstellung von Spielen, das von Florian Rivalen (4ian) erstellt wurde.
  • Godot Mit Game Engine können Spielskripte und Grafik-Shader mit visuellen Programmiersprachen des Knotengraphs erstellt werden.
  • Personalmaschine ist ein visuelles programmierbasiertes Puzzlespiel, das von entwickelt wurde von Morgen Corporation.
  • Kodu, eine Software, mit der Spiele mit einer 3D -Schnittstelle programmiert wurden, die von Microsoft Research entwickelt wurde.
  • Pixel Game Maker MV ist ein interface-basiertes 2D-Videospielentwicklungs-Tool.
  • Hobbyraum Enthält ein Spielerstellungssystem mit einer notenbasierten visuellen Programmiersprache namens Circuits.
  • Schneeglöckchen hat ein visuelles Skriptsystem.
  • Stycyl, ein Tool für Videospielerstellung.
  • Einheit hat ein visuelles Skriptsystem zum Zeitpunkt der ECS -Version.
  • Unwirklicher Motor 4 hat eine notenbasierte visuelle Programmiersprache namens Blueprints und auch Shader.

Viele moderne Videospiele verwenden von Verhaltensbäume, die im Prinzip eine Familie einfacher Programmiersprachen sind Modellverhalten zum Nicht-Spieler-Charaktere. Die Verhaltensweisen werden als Bäume modelliert und häufig in grafischen Herausgebern bearbeitet.

Systeme / Simulation

Automatisierung

Data Warehousing / Business Intelligence

Sonstig

  • Kwikpoint, ein isotypen visueller Übersetzer von Alan Stillman erstellt
  • Lava, ein experimentelles Objektorientieren Rad Sprache
  • Limnor, ein Allzweck -Programmiersystem. Limnor Studio ist eine IDE für eine schnelle Softwareentwicklung.
  • Morphisch (Software)erleichtert es einfacher, grafische Objekte durch direkte Manipulation und innerhalb von Programmen zu erstellen und zu bearbeiten. das Ganze Selbst (Programmiersprache) Die Programmierumgebung wird mit morphisch gebaut
  • Piet, eine esoterische Sprache, das Programm ist ein Bild, dessen Pixel die Elemente der Sprache sind
  • PWCT, Kostenlose Open -Source -visuelle Programmiersprache für die Softwareentwicklung
  • Streambase -Systeme, Streambase EventFlow ist eine visuelle Programmiersprache für die Verarbeitung von Streaming -Ereignissen
  • Webml, ist eine visuelle Sprache zum Entwerfen komplexer datenintensiver Webanwendungen, die automatisch generiert werden können
  • Yahoo! Rohre ist ein visuelles Datenflussprogrammiersystem zum Verarbeiten von Webdaten[17]
  • JOLLE, grafische Workflow -Sprache

Erbe

Visuelle Stile

Siehe auch

Verweise

  1. ^ Jost, Beate; Ketterl, Markus; Budde, Reinhard; LEIBBACH, Thorsten (2014). "Grafische Programmierumgebungen für Bildungsroboter: Open Roberta - noch eine?". 2014 IEEE International Symposium über Multimedia. S. 381–386. doi:10.1109/ism.2014.24. ISBN 978-1-4799-4311-1.
  2. ^ Bragg, S.D.; DRISKILL, C.G. (1994). "Diagramm-grafische Programmiersprachen und dod-std-2167a". Verfahren von Autotestcon '94. S. 211–220. doi:10.1109/Herest.1994.381508. ISBN 0-7803-1910-9.
  3. ^ Kuhail, M. A.; Farooq, S.; Hammad, R.; Bahja, M. (2021). "Charakterisierung visueller Programmieransätze für Endbenutzerentwickler: eine systematische Überprüfung". IEEE -Zugang. 9: 14181–14202. doi:10.1109/access.2021.3051043.
  4. ^ Repenning, Alexander (2017). "Übergang über die Syntax hinaus: Lehren aus 20 Jahren Blöcken programmieren in Agentenblättern". Journal of Visual Languages ​​und empfindungsfähige Systeme. 3: 68–91. doi:10.18293/VLSS2017-010.
  5. ^ Johnston, W.M.; Hanna, J.R.P.; Millar, R.J. (2004). "Fortschritte in DataFlow -Programmiersprachen" (PDF). ACM Computing -Umfragen. 36 (1): 1–34. doi:10.1145/1013208.1013209. Abgerufen 2011-02-16.
  6. ^ Rekers, J.; Schürr, A. (1997). "Definieren und Parsen visueller Sprachen mit geschichteten Grammatiken für die Graphen". Journal of Visual Languages ​​& Computing. 8 (1): 27–55. doi:10.1006/jvlc.1996.0027.
  7. ^ Zhang, D.-Q. (2001). "Ein kontextempfindlicher Grammatikformalismus für die Spezifikation visueller Sprachen". Das Computerjournal. 44 (3): 186–200. doi:10.1093/comjnl/44.3.186.
  8. ^ http://www.comppetmusicjournal.org/reviews/31-* * * 2/Regan-Bidule.html
  9. ^ "Shader Editor - Blender Manual". docs.blender.org. Abgerufen 2021-01-22.
  10. ^ "Komposition - Mixerhandbuch". docs.blender.org. Abgerufen 2021-01-22.
  11. ^ "Texturbearbeitung - Blenderhandbuch". docs.blender.org. Abgerufen 2021-01-22.
  12. ^ "Referenz-/Versionsnotizen/2.92/Geometrieknoten - Blender -Entwickler Wiki". Wiki.blender.org. Abgerufen 2021-01-22.
  13. ^ "Geometrieknoten - Mixerhandbuch". docs.blender.org. Abgerufen 2021-10-02.
  14. ^ "Babylon.js node Material Editor". nme.babylonjs.com. Abgerufen 2021-01-22.
  15. ^ Konstrukt klassische Startseite konstruieren
  16. ^ Konstruieren Sie die klassische Seite auf SourceForge
  17. ^ "Yahoo! Pfeifen". Archiviert von das Original Am 2015-01-03. Abgerufen 2015-01-03.
Dieser Artikel basierte ursprünglich auf Material aus dem Kostenloses Online-Wörterbuch des Computers, mit Genehmigung verwendet. Update bei Bedarf.

Externe Links