# Einführung

DynamicNodes ist eine Oberfläche zum grafischen Entwerfen von Flussgraphen. Ein Graph wird dabei aus verbundenen Knoten gebildet. Die Art der Daten welche verarbeitet werden können, ist nur von der Art der Knoten abhängig. Das System kann über eine PlugIn-Schnittstelle um beliebige Knotentypen erweitert werden.

Die Entwicklung eines Graphen geschieht mit Hilfe eines grafischen Editors und ist ohne Programmierkenntnisse leicht zu erlernen. Durch die prinzipielle Datentypenunabhängigkeit kann das System in allen Anwendungsgebieten eingesetzt werden, in denen ein Datenfluss modelliert werden kann und für denen eine entsprechende Knotenbibliothek zur Verfügung steht.

Das System bietet weiterhin die Möglichkeit einen Graphen zu modularisieren und als Knoten in einen weiteren Graphen einzubinden. Damit sind auch größere Entwicklungen möglich, in denen Gruppen von Verarbeitungsknoten wiederverwendet werden können.

DynamicNodes gliedert sich in folgende Komponenten:

- Eine Laufzeitumgebung für die Graphen (DNCore)
- Einen grafischen Editor, welcher ein übersichtliches und schnelles Entwickeln von Graphen ermöglicht (DNWinApp)
- Befehlszeilenwerkzeug zur Ausführung von Graphen auf der Befehlszeile (DNConsole)
- Eine Knotenbibliothek mit Standardknoten für die Datenflusssteuerung (DNLibDefault)
- Eine Knotenbibliothek mit Benutzerschnittstellenkomponenten (DNLibCockpit)
- Eine Knotenbibliothek für Low-Level .NET-Programmierung
- Eine Knotenbibliothek für die Ausführung von PowerShell-Scripts oder -Funktionen
- Eine Knotenbibliothek für Bildverarbeitungsaufgaben (DNLibImageProcessing)

Die Graphen werden in einem einfachen XML-Format gespeichert, womit die Entwicklung von externen Graphen-Generatoren möglich wird.

Der DynamicNodes-Kern kann in andere Umgebungen intergiert werden. Damit ist das Ausführen von Graphen ohne grafische Ausgabe in anderen Anwendungen möglich.