ViPLab

Dienst für Beschäftigte und Studierende

Virtuelles Programmierlabor (ViPLab)

Das virtuelle Programmierlabor ViPLab ist eine browserbasierte Programmierumgebung in ILIAS, welche die Durchführung von Programmieraufgaben in Online-Tests ermöglicht.

Funktionsumfang

  • in ILIAS-Tests integrierte Programmieraufgaben
  • browserbasierte IDE
  • Ausgaben können in textueller und grafischer Form (2D & 3D) interpretiert werden
  • Unterstützte Programmiersprachen: C, C++, Matlab, Octave und Java, sowie DuMuX
  • Automatische Korrektur der Aufgabenlösungen möglich

Häufig gestellte Fragen

Oben in ViPLab kann die zu bearbeitende Aufgabe ausgesucht werden. Links im Textfeld steht der Teil des Programms, das zur Lösung der Aufgabe vervollständigt werden muss. Unten kann mit Execute das Programm ausgeführt werden. Oberhalb des Textfeldes kann das Programm gespeichert, geöffnet, gedruckt werden und Zeilennummern kann man sich anzeigen lassen, um die Stelle, an der eine Fehlermeldung auftritt, leichter zu finden. Im rechten Textfeld steht dann die Ausgabe und eventuell Fehlermeldungen.

Aus Sicherheitsgründen sind einige Funktionen deaktiviert. Es kann auch aus didaktischen Gründen sinnvoll sein, eine beschränkende Struktur vorzugeben. Außerdem verbietet bei einigen Programmen die Lizenz, dass man die Programme vollumfänglich im Internet zugänglich macht.

ViPLab läuft im Browser. Wird dieser geschlossen oder die Seite neu geladen, dann gehen alle Änderungen verloren. Man kann seine Arbeit auf dem aktuellen Rechner speichern. Damit ist man vor Datenverlust geschützt und kann auch später weiterprogrammieren.

Es gibt nicht die eine richtige Lösung, sondern es sind immer mehrere Lösungswege denkbar. Man kann zwar beweisen, ob ein Programm korrekt ist oder nicht, es ist allerdings aufwändig und wird in der Praxis nicht gemacht. Deshalb versucht man mit charakteristischen Beispielen zu testen und die Ergebnisse zu prüfen. Falsch-Eingaben sollten ein Programm nicht abstürzen lassen oder falsche Resultate liefern, sondern eine aussagekräftige Fehlermeldung zurückgeben.

Man muss zwei Arten von Fehlern unterscheiden. 
Es gibt syntaktische Fehler, das heißt die Form des Programms entspricht nicht den Regeln der Programmiersprache; vergleichbar einem Grammatikfehler bei Sprachen. Computer sind da sehr strikt. Bei syntaktischen Fehlern bricht das Programm ab und gibt eine Fehlermeldung aus, die Hinweise auf den Fehler geben. Es wird dabei die Zeilennummer mit angegeben, so dass der Fehler in dieser Zeile oder der näheren Umgebung zu suchen ist. 
Die Zeile 


n = length(b; 


führt zur Fehlermeldung wie 


>> {#??? Error: File: /work/16/source.m Line: 31 Column: 13 Unbalanced or unexpected parenthesis or bracket. 

die angibt, dass die Zahl der öffnenden und schließenden Klammern ( bzw. ) unterschiedlich ist. Damit sollte der Fehler zu finden sein. 
Schwieriger zu finden sind semantische Fehler, also logische Fehler im Programm. Bei Sprache wären das korrekte Sätze mit einer falschen Aussage. Inhaltliche Fehler sind schwerer zu finden. Es gibt einige klassische Fehler. Oft werden Schleifen einmal zu viel oder zu wenig durchlaufen, Vorzeichenfehler in Bedingungen oder Dimensionsfehler bei Vektoren und Matrizen treten auf. Manchmal bricht das Programm ab, wenn der Befehl nicht ausgeführt werden kann. Dann ist der Fehler leicht einzugrenzen. Stimmt allerdings das Ergebnis nicht, muss das Programm noch einmal durchdacht werden. Es kann helfen Zwischenergebnisse mit disp, printf ausgeben zu lassen. Oft haben die Variablen andere Werte, als man fälschlicher Weise vermutet.

Zum Seitenanfang