Lehrzeit

Schule & Informatik

Java Syntax-Diagramm

Ich halte Syntaxdiagramme für die beste Art und Weise die Struktur von Java zu verdeutlichen, weil sie so schön betonen, wie starr Programmiersprachen im Vergleich zu natürlichen Sprachen sind. Ein Methodenkopf hat immer die gleiche Struktur, eine bedingte Verzweigung hat immer die gleiche Struktur, meine so „geliebte“ for-Schleife hat immer die gleiche Struktur. Nur bestimmte Teile müssen an die jeweilige Situation angepasst werden.

Leider habe ich jetzt auf die schnelle kein Syntax-Diagramm gefunden, was zu meinem aktuellen Unterricht passt, daher habe ich mir mit Hilfe meiner eigenen Internetseite und dem weiter unten folgenden EBNF-Code eines erzeugen lassen:

Dieses Syntax-Diagramm deckt jetzt aber nur meinen aktuellen Bereich ab. Wer etwas anderes haben möchte, der passt sich die folgende EBNF-Vorlage an und gibt es auf meiner Seite wieder ein.

Methode = Methodenkopf "{" ( Funktionsrumpf | Prozedurrumpf ) "}".
Funktionsrumpf = Methodenrumpf "return-Statement" .
Prozedurrumpf = Methodenrumpf .

Methodenkopf = Sichtbarkeit Rueckgabewert "Name" "(" Parameterliste ")".
Methodenrumpf = { Anweisung | Kontrollstruktur } .

Parameterliste = [ Datentyp "Parametername" {"," Datentyp "Parametername"} ].
Sichtbarkeit = "public" | "private" | "protected".
Rueckgabewert = "void" | Datentyp.
Datentyp = "int" | "double" | "float" | "boolean" | "String" | "Klassenname".
Anweisung = {"Manipulation von Variablen" | "Methodenaufruf"} .
Kontrollstruktur = "if-Abfrage" | "for-Schleife" | "while-Schleife".

Mir ist zum Beispiel die Unterscheidung zwischen Methodenkopf und -rumpf wichtig, da ich das gerne in Aufgabenstellungen brauche. Auch der Rückgabetyp „void“ ist mir wichtig, da ich inzwischen eine betontere Verknüpfung zwischen dem Funktionalen Programmieren in der 9. JgSt und dem Programmieren in Java mache. Ich mache in der 9. Klasse nämlich bewusst keine Excel-Produktschulung, sondern lege Wert auf „das Verknüpfen von Maschinen“. So ist in meiner aktuellen 10. Klasse am Ende dieses Bild an der Tafel entstanden. (Okay, ich habs nachgezeichnet, weil ich vergessen hatte es zu fotografieren) :

(Fehlerkorrektur: Die letzte Klammer fehlt.)

In der 9. Klasse benutze ich auch möglichst wenig Excel oder Calc oder ähnliches, sondern Orinoco.  Ein Programm, dass ich jedem Lehrer für den Unterricht in der 9. Jahrgangsstufe beim Thema Funktionales Programmieren nur wärmstens ans Herz legen kann. Schade, dass es nicht weiterentwickelt wird oder, das ist immer meine Lieblingsvariante, eine Online-Variante davon gibt.

2 Kommentare

  1. Hallo Herr Bartling,
    freut mich, dass Sie das Programm in Ihrem Unterricht einsetzen. Mittlerweile habe ich Orinoco schon länger nicht mehr angefasst. Was hätten Sie denn noch für eine Funktionalität gebraucht, vielleicht kann ich helfen.
    Herzliche Grüße,
    Christoph Gräßl

    • Hallo Herr Gräßl,
      erstmal noch vielen, vielen Dank für das tolle Programm. Ich empfinde es als wichtige Bereicherung für meinen Unterricht.

      Das größte Problem ist, da müsste ich aber bei meinen Schülern noch mal genau beobachten, das Speichern. Es wird nicht automatisch gespeichert, was manchmal dazu führte, dass die Schüler in der nächsten Stunde wieder von vorne anfingen. Ich sehe es zwar als Erziehungsmßnahme, dass die Schüler sich das regelmäßige Speichern angewöhnen, aber manchmal ist es schon nervig. Man kann, glaube ich, auch das Programm beenden, ohne das eine Aufforderung kommt, die Datei / die Änderungen zu speichern.

      Ein anderes Problem war die Art und Weise, wie es programmiert wurde. Es setzte irgendwelche MS-Libraries voraus, die ich nicht installiert hatte. Daher konnte ich es nicht benutzen. Schön wäre es, wenn es wirklich eine Standalone-Version wäre, die möglichst nichts Microsoft-spezifisches voraussetzt. Dann könnte ich es, wie viele anderen Programme einfach auf ein Netzwerklaufwerk legen. Oder halt eine Online-Variante. Dann könnte man auf mobilen Endgeräten das auch nutzen – betriebssystemunabhängig. Ich denke nämlich, dass man das Programm auch gut im Matheunterricht einsetzen könnte.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

*

© 2017 Lehrzeit

Theme von Anders NorénHoch ↑