Virtual-C IDE
# Virtual-C IDE

Die Virtual-C IDE (auch 'VIDE' genannt) ist eine einfache integrierte Entwicklungsumgebung zur Darstellung des Daten- und Kontrollflusses eines C-Programms. Es bietet mit einem Editor, Compiler/Linker und Debugger die Möglichkeit, C-Programme zu entwickeln, zu übersetzen und zu testen. Aufgrund der einfachen Handhabung und der Visualisierungsmöglichkeiten ist die IDE besonders für Programmieranfänger geeignet.

## Funktionalität

Das Ziel der Virtual-C IDE ist eine möglichst einfache Bedienung, um Schülern und Studenten den Einstieg in die C-Programmierung zu vereinfachen. So ist zum Übersetzen oder Debuggen eines C-Programms keine Konfiguration oder die Erstellung eines Projekts erforderlich. Für die Anwendung im Unterricht ist die Benutzeroberfläche einfach skalierbar, damit auch bei geringen Auflösungen der Videoprojektion im Klassenzimmer/ Hörsaal Programmtext, Datenvisualisierung sowie Ein- und Ausgabe gut lesbar sind.

Im Gegensatz zu einer professionellen Entwicklungsumgebung wird (derzeit noch) keine ausführbare Datei erzeugt. Vielmehr wird das Programm in einer virtuellen Maschine ausgeführt. Die Virtual-C IDE bietet insbesondere:

* Visualisierung des Arbeitsspeichers: Die Zugehörigkeit von Speichersegmenten wird mit verschiedenen Farben markiert, wie z. B. blau für konstante Bereiche oder grün für das Datensegment. Zeiger werden als Pfeile auf Speicherblöcke entsprechender Farbe dargestellt.
* Darstellung des Kontrollflusses: im Zeitlupenmodus kann der Benutzer die schrittweise Ausführung des Programms verfolgen. Zusätzlich wird der Call stack dargestellt.
* Interaktive Übungsaufgaben: Ein integriertes Tests framework erlaubt das Durchführen von Black-Box-Tests.
* Eine ECMAScript API ermöglicht die Bereitstellung von Plug-ins. Aktuell werden drei Plug-ins mitgeliefert:
   * Visualisierung der einfach verketteten Liste,
   * graphische Darstellung von Binärbäumen,
   * sowie ein Ablaufprotokoll beim Debugger.
* Eine vereinfachte Version der SDL kann für die Programmierung von Grafik eingesetzt werden.
* Nebenläufige Programme lassen sich mit Hilfe von ISO C11 Threads umsetzen.
* Die IDE unterstützt C90 und weitgehend den Sprachkern von ISO C11, wobei die Laufzeitbibliothek einige Einschränkungen aufweist.
* Einige Feature sind aus didaktischen Gründen nicht implementiert, wie z. B. die Autovervollständigung oder VLAs.

Die Virtual-C IDE ist sowohl für Mac OS X, Linux als auch für Windows als Freeware verfügbar.

