Puckeine visuelle Programmiersprache
für die Schule
Vortrag INFOS 2005
Lutz Kohl
30.09.2005
2
Gliederung
Alles wird visuell?!
Visuelle Programmierung, was ist das?
Weshalb eine visuelle Programmiersprache für die Schule?
Wie wurde Puck entwickelt?
Was kann Puck?
Ein Beispiel
Wo gibt es Puck?
3
Alles wird visuell?!
• Kopieren früher
• Kopieren heute
4
Alles wird visuell?!
Grafische Oberfläche textuell erstellen:
JEditorPane ep;ep = new JEditorPane();ep.setVisible(true);ep.setLocation(0,400);ep.setSize(800,400);ep.setBackground(Color.lightGray);
5
Alles wird visuell?!
6
Alles wird visuell?!
public class Informatikstudent extends Student {…}
7
Alles wird visuell?!
8
Alles wird visuell?!
9
Alles wird visuell?!
PROCEDURE fibo(n: INTEGER; VAR Ergebnis: INTEGER); VAR hilf1: INTEGER; hilf2: INTEGER; BEGIN IF (n < 2) THEN Ergebnis:=n ELSE fibo(n-1,hilf1); fibo(n-2,hilf2); Ergebnis:=hilf1+hilf2 END END fibo;
10
Alles wird visuell?!
11
Visuelle Programmierung, was ist das?
• Visuelle Programmiersprachen sind Sprachen die, – visuelle Elemente enthalten, die von syntaktischer und
semantischer Bedeutung sind, – ihre Syntax aus der räumlichen Anordnung und den
Verbindungen zwischen Grafiken und Texten erhalten, – ihre Semantik aus der Interpretation der syntaktischen
Strukturen, – sowie durch die semantische Anreicherung der
Programmkonstrukte durch visuelle Attribute beziehen.
(vgl. Schiffer, Stephan: Visuelle Programmierung: Grundlagen und Einsatzmöglichkeiten; Bonn, 1998.)
12
Weshalb eine visuelle Programmiersprache für die Schule?
Algorithmen
AnfangsunterrichtImperative Programmierung
- viel zu lernen -
Syntax
Kontrollstrukturen
Variablenkonzept
13
Weshalb eine visuelle Programmiersprache für die Schule?
Herr Lehrer, ich hab da so eine komische Fehlermeldung.
Du hast das Schlüsselwort ‚WHILE’
falsch geschrieben.
Wenn du eine Variable verwendest, musst du sie vorher deklarieren.
Du hast dort ein Semikolon vergessen.
In deinem Programm ist ein ‚END’ zu wenig.
14
Weshalb eine visuelle Programmiersprache für die Schule?
um schnell und einfach motivierende Ergebnisse zu erreichen
um den Schüler nicht durch Überforderung zu frustrieren
um den Lehrer bei der Fehlersuche zu entlasten
15
Wie wurde Puck entwickelt?
Idee – eine visuelle Programmiersprache für die Schule!
Welche visuellen Programmiersprachen gibt es schon?
Bestehenden Systeme wurden analysiert.
Was genau sind die Anforderungen? Was ist wichtig?
Lehrer wurden interviewt.
Entsprechend den Anforderungen wurde ein System entwickelt.
Puck wurde in Schulen getestet und weiterentwickelt.
16
Wie wurde Puck entwickelt?
Lehrer orientierten sich mit ihren Forderungen am Lehrplan
Imperatives Paradigma sollte umgesetzt werden
Kontrollstrukturen und Variablenkonzept sollten erlernbar sein
Die Algorithmen des Anfangsunterrichts sollten umsetzbar sein
Quelltext sollte generiert werden können
Außerdem: Hilfe, Aufgabensammlung, möglichst alles kostenlos
Ergebnisse der Interviews
17
Was kann Puck?
Programme des Anfangsunterrichts
Datentypen Integer und Boolean
Prozeduren mit verschiedenen Übergabemechanismen
Rekursion, Iteration
Grafikausgaben (Punkt, Linie und Rechteck)
ggT / kgVBruchrechnen Fibonacci-Zahlen
Türme von Hanoi Funktionen zeichnen
18
Was kann Puck?
Puck kann einen Algorithmus anschaulich visuell repräsentieren
Puck kann Semikolons richtig setzen
Nur richtig deklarierte Variablen können verwendet werden
Syntaxunterstützung (z.B. beim Ändern von Variablennamen)
Der Lehrer kann die zu verwendenden Bausteine vorgeben
Schüler begeistern (erste Testergebnisse positiv)
19
Beispiel
20
Fragen, Ende
Download:www.uni-jena.de/puck.html
Erfahrungsberichte, Fragen, Anregungen, Bugs bitte an:
Vielen Dank für ihre Aufmerksamkeit!