Möglichkeiten der //grafischen Programmierung// gibt es verschiedene - je nach Sichtweise auch auf unterschiedliche Art. Weniger eine Art zu programmieren eher eine visuelle Beschreibungssprache ist z.B. [[wpde>UML]]. ===== Unified Modelling Language (kurz: UML) ===== Die //UML// ist eine standardisierte Modellierungssprache. Mit ihr sollen vor allem Softwaresysteme modelliert werden können indem grafische Darstellungen der Konzeption, Struktur etc. aus verschiedenen Perspektiven möglichst eindeutig beschrieben werden können. Einige Softwareempfehlungen [[wpde>UML-Werkzeug|UML-Werkzeuge]] gibts einige. Der verlinkte Wikipediaartikel gibt einen informativen Einstieg. ==== Für Graphen und Diagramme ==== * Dia https://wiki.gnome.org/Apps/Dia/ * vielseitiges Grafikprogramm mit UML Unterstützung * diverse [LaTeX-Pakete](./LaTeX-Pakete.markdown) auf www.ctan.org ==== Für Forward- & Reverse engineering ==== * [[Umbrello]] (https://umbrello.kde.org/) * ein KDE-Programm, das ebenfalls Quellcode aus UML-Modellen erzeugen kann und umgekehrt * UML 2 teilweise implementiert (ansonsten UML 1.4) * deutschsprachige Anleitung: https://docs.kde.org/stable4/de/kdesdk/umbrello/index.html * soll die Dateiformate von //Argo UML// und //Poseidon UML// importieren können * [[StarUML 2]] (http://staruml.io/ jedoch ohne Quellcode) bzw. //WhiteStarUML// (http://sourceforge.net/projects/whitestaruml/ mit Delphi-Quellcode) * UML2 Unterstützung * Codegenerierung vom Modell und umgekehrt * durch Extensionsystem flexibel erweiterbar * [[Modelio]] (https://www.modelio.org/), Modelio3-Quellcode (http://forge.modelio.org/projects/modelio3-development-app/files) * unterstützt UML 2.0 * durch Extensionsystem flexibel erweiterbar * Java 6 Unterstützung (Codegenerierung und einlesen von Java-Code) * diverse Plugins für gängige [[IDE|IDEs]] etwa Eclipse * [[Papyrus]] === Ältere Programme === * ArgoUML http://argouml.tigris.org/ (letzte Version ist von 2011) * unterstützt UML 1.4 (ist also ziemlich alt), XMI 1.2, Dresden OCL * durch Plugins erweiterbar (z.B. für Datenbanken) * Poseidon for UML (Community Edition) http://www.gentleware.com/new-poseidon-for-uml-8-0.html * Weiterentwicklung von ArgoUML (leider unfrei, aber mit 30 Tage Testzeitraum) * Apollo for Eclipse http://www.gentleware.com/apollo.html * UML-Plugin für Eclipse(IDE) ähnlich Poseidon for UML (ebenfalls unfrei) * Fujaba http://www.fujaba.de/ (ist ebenfalls älter) * ist in Eclipse(IDE) integrierbar * wird von verschiedenen Hochschulen entwickelt (u.a. der TU Dresden) * ist durch Plugins erweiterbar * Gaphor http://gaphor.sourceforge.net/ * unterstützt UML 2.0 * durch Pluginsystem erweiterbar * UMLet http://www.umlet.com/ (Eclipse-Plugin oder eigenständiges Programm) * UMLetino http://www.umlet.com/umletino/ (browserbasierte Weiterentwicklung von Umlet) ===== (grafische/ konsolenbasierte) integrierte Entwicklungsumgebungen (IDEs) ===== * [[Eclipse]] * Die eierlegende Wollmilchsau unter den IDEs * dank Java plattformunabhängig aber auch leistungshungrig * [[Anjuta]] * für Fans des [[Gnome]]-Desktops, in den es gut integriert ist * arbeitet gut mit dem RAD-Tool [[Glade]] zusammen * [[KDevelop]] * für Fans des [[KDE]]-Desktops, in den es gut integriert ist (quasi das //KDE-Äquivalent// zu //Anjuta//) * [[QtCreator]] * [[Geany]], [[Notepad++]]/ [[Notepaddqq]] * per Plugin erweiterbare, eher leichtgewichtige, Texteditoren * [[emacs]], [[vim]] * die berühmten Klassiker für die Konsole mit einem Funktionsumfang, der nicht unterschätzt werden sollte! * [[Maquetta]] (http://maqetta.org/) * Online-IDE, die (dank HTML5 und Javascript) komplett im Webbrowser läuft (natürlich selbst gehostet) ===== Siehe auch ===== * [[wpde>Erziehungsorientierte_Programmiersprachen]] * [[wpde>Scratch (Programmiersprache)]] (-> zum [[https://github.com/LLK/Scratch_1.4| Github-Repo mit dem Quellcode]]) * [[wpde>Snap! (BYOB)]] (-> zum [[https://github.com/jmoenig/Snap--Build-Your-Own-Blocks| Github-Repo mit dem Quellcode]]) * [[https://wiki.stura.htw-dresden.de/index.php/Programmiervorkurs | Idee eines Programmiervorkurses]] an der HTW Dresden * [[wpde>UML-Werkzeug]] * LU-Artikel (vom 17.10.2011) über Modelio 2: [[http://www.linux-community.de/Internal/Nachrichten/UML-Tool-wird-freie-Software/%28language%29/ger-DE|"UML-Tool wird freie Software"]] * http://www.oose.de/nuetzliches/fachliches/uml-werkzeuge/ * http://www.freebase.com/base/umltools {{tag>Software Software:Programmierung Software:UML Softwareentwicklung}}