Ich kann mich erinnern, dass wir uns gefreut haben, als erste integrierte Systeme verbreitet wurden (UCSD-Pascal war, soweit ich erinnere, das erste System, das allgemein verbreitet wurde – lange vor Turbo), die es gestatteten, mit einem einfachen Editor, der viele Sprachelemente hervorhob und es ermöglichten, direkt aus dem Editor das Programm übersetzen zu lassen, an fehlerhafte Stellen geführt zu werden, …
Zunehmend jedoch wurden diese Ansätze immer komplexer: hier eine
Möglichkeit, den Programmablauf zu beobachten, dort eine Variante, um
Tipparbeit zu sparen, um die professionelle
Programmiererin zu unterstützen. Und dann noch: Mal eben eine
Benutzungsoberfläche zusammenzuklicken. Featurities machte sich breit.
Viele Kollegen glauben heute, ohne eine Entwicklungsumgebung wäre
Programmieren nicht möglich. Wenn ich die Argumente für
Entwicklungsumgebungen höre, habe ich häufig den Eindruck, dass es
Schülerinnen im Unterricht ermöglicht werden soll, professionelle
Softwareentwicklung zu betreiben.
Das ist aber nicht unser Ziel.
Nach wie vor gilt:
Dass der Einsatz von komplexen Entwicklungsumgebungen auf einem kleinen mobilen Gerät kaum sinnvoll ist, bedarf kaum der weiteren Erläuterung. Damit kommt ein solches Gerät meinem didaktischen Wunsch sehr entgegen.
Es sollte möglich sein, dass der Programmcode syntaktisch geprüft wird, bevor er zum Ablauf gebracht wird. Der bereits in dem LaTeX-Artikel dieser Ausgabe vorgestellte Editor bietet (voreingestellt) diese Möglichkeit.
Um zu prüfen, ob die Syntax des eingegebenen Programms korrekt ist, wird von SciTE das Werkzeug Syntax Check zur Verfügung gestellt.
Das Ergebnis der Prüfung wird in einem eigenen Textfenster dargestellt. So hat man gleichzeitig beide Sichten im Blick und kann auf diese Weise nach und nach die Syntaxfehler beseitigen.
Eine weitere Anforderung betrifft die Möglichkeit, aus dem Editor heraus das Programm zu starten. Dies bereitet modernen Editoren keine Schwierigkeit – sind erst einmal alle Pfade richtig eingestellt. Zu meiner Überraschung waren die Einstellungen bei SciTE bereits so vorgenommen, dass direkt damit gearbeitet werden konnte.
Im konkreten Fall muss aus der Werkzeugkiste (Tools) das Werkzeug Go ausgewählt werden. Damit werden – transparent in einem gesonderten Textfenster – die Ausgaben protokolliert, die beim Ablauf auf der Konsole ausgegeben werden.
Darüber hinaus werden die Aktionen durchgeführt, die durch das Programm erfolgen.
Im vorliegenden Programm wird mit der Klassenbibliothek Stifte und Mäuse (SuM) gearbeitet, um die Darstellung eines aus verschiedenen Waggons bestehenden Zuges zu erstellen. Dazu wurde die von Ingo Linkweiler im Zusammenhang mit seiner Diplomarbeit ingo-linkweiler.de/diplom vorgelegte Implementierung von SuM verwendet, die gegenüber dem Original um die Klasse Sprite erweitert wurde.
Diese kommt in dem dargestellten Beispiel zum Einsatz und zeigt, dass es gut möglich ist, diese erweiterte Klassenbibliothek auf einem kleinen Gerät zu nutzen.
Die im Zusammenhang mit der Diplomarbeit von Ingo Linkweiler vorgenommenen Erweiterungen der Klassenbibliothek SuM in der Python-Implementierung betreffen nicht nur die neuen Möglichkeiten, die mit der Klasse Sprite in performanter Weise gegeben sind, sondern darüber hinaus beispielsweise die Möglichkeit der Ausgabe von Tondokumenten (realisiert - siehe Quellcode) oder Videofilmen (nicht realisiert). Die erweiterten Möglichkeiten sind darauf zurückzuführen, dass die Implementierung mit der plattformunabhängigen Schnittstelle SDL (Simple DirectMedia Layer) vorgenommen wurde, für die eine Python-Schnittstelle existiert.
Die Schnittstelle erlaubt auch auf nicht performanten Geräten, wie dem hier benutzen Nokia 770, den zügigen Ablauf grafikorientierter Programme.