MUPIS - Modellieren und Programmieren in der Schule
MUPIS - Modellieren und Programmieren in der Schule
Editor und REPL (Interaktivitäts-Fenster)
Die Arbeitsumgebung von DrScheme besteht aus einem Doppel-Fenster
Im Editor entsteht wie üblich
•der Quelltext (Quellcode)
•es werden auch Ausdrücke, insbesondere Funktionsaufrufe eingegeben
In der REPL (=Read-Evaluate-Print-Loop)
•erscheinen die Ergebnisse (Werte) der Ausdrücke und Funktionsaufrufe aus dem Editor
•kann wie mit einem Präfix-Taschenrechner gearbeitet werden (Abschluss mit RETURN/ENTER-Taste)
Verschiedene, skalierbare Lernsprachen/Konzepte
Sowohl im HtDP- als auch im DMdA-Konzept wird
• in den ersten beiden Lernstufen nur ein rein funktionales Programmieren ermöglicht
• ab der Stufe „ „Zwischenstufe mit lambda” (HtDP) bzw. „Die Macht der Abstraktion mit Zuweisungen (DMdA) kommen alle Möglichkeiten der imperativen Programmierung hinzu (Zuweisungen, Blöcke von Anweisungen usw.), so dass damit auch als evtl. drittes Paradigma OOP möglich ist
An manchen Hochschulen wird nach einem Scheme-Kurs mit HtDP oder DMdA als zweite Programmiersprache Java eingeführt, und zwar mit Hilfe der Lernsprache „ProfessorJ”, die auch skalierbar ist.
Systematische Programmentwicklung
Vor dem ersten Programmstart empfiehlt sich eine Syntaxprüfung mit der Besonderheit, daß
In der DMdA-Variante sind Funktionsverträge syntaktisch wirksam zur Überprüfung der Signaturen und gehören zum Quellcode
Die Funktion (check-expect <Funktionsauf> <erwarteter Wert>) vergleicht beim Programmaufruf den erwarteten Wert mit dem errechneten und gibt entsprechende Meldungen aus.
Solche Testfälle sind vor der Definition der Funktion anzufertigen.
Ein didaktisch besonders wertvolles Werkzeug ist der sog. Stepper, mit dem der Programmablauf durch schrittweise Substitution (Einsetzung) von Funktionsaufrufen verfolgt werden kann, insbesondere nützlich bei Rekursionen.
Sonstiges (in Auswahl)
Diese Lernumgebung
•ist plattformübergreifend (Windows, Mac OS, Linux)
•ist kostenlos
•verfügt über sog. Teachpacks, also zu den Lernsprachen zuladbare Erweiterungen für bestimmte Themen: Grafik, Event-Handling, GUI-Erstellung, usw.
•verfügt über einen eigenes Webserver-Programm
•kann auch Stand-Alone-Applikationen erstellen
•...