Konzepte des Anfangsunterrichts Informatik in der 11.1 Modellierung mit BlueJ Implementierung mit dem Java-Editor
Die Situation im Anfängerunterricht Modellierung ist ein wesentlicher Aspekt des Anfängerunterrichts Informatik, wird i. d. R. intuitiv und leicht erlernt. Implementierung der Funktionalität ist weniger intuitiv erlernbar, Algorithmen haben aber eine große Bedeutung in der Informatik. Verbindung zwischen der Modellierung und der Algorithmik muss hergestellt werden.
Zwei denkbare Ansätze: Modellierung mit BlueJ Klassenstruktur modellieren Objektdiagramme einsehen Objektinteraktion beobachten Java-Programmierkurs mit Java-Editor GUI-Entwurf Ereignis-Behandlung Algorithmen-Implementierung
Ziel meines Unterrichts: Nutze die Vorteile beider Ansätze: Modellierung mit BlueJ Programmierung mit Java-Editor
Vorteile des BlueJ nutzen Gutes Einführungsbeispiel nach Barnes und Kölling Klare Darstellung und Unterscheidung von Klassen und Objekten Leichte Erzeugung von Objekten einer Klasse Schnelle Testmöglichkeit eigener Klassen ohne GUI-Implementierung Einfache Erlernung des Aufbaus einer Klassendefinition Einfache aber ansprechende Bildschirmausgabe für Anfangsproblemstellungen
Vorteile des Java-Editors nutzen Autovervollständigung (gerade für Anfänger wichtig) Einfache Kontrollstrukturen als Makro Einfache Herstellung einer GUI für Benutzerkommunikation (Frames, Applets) Einfache Ereignisbehandlungsmethoden UML-Diagramme mit Beziehungen Übersichtliche Fenstertechnik für Quelltexte Guter Debugger Vielfältige Erweiterungsmöglichkeiten
Ein Beispiel das Projekt Spielautomat Modellierung mit BlueJ Programmierung im Java-Editor
Modellierung mit BlueJ
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation)
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation)
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen Objekte verwenden Datenfelder inspizieren
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen Objekte verwenden Datenfelder inspizieren
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen Objekte verwenden Datenfelder inspizieren Methodenaufrufe
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen Objekte verwenden Datenfelder inspizieren Methodenaufrufe
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen Objekte verwenden Datenfelder inspizieren Methodenaufrufe Einfache Konsolenausgaben
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen Objekte verwenden Datenfelder inspizieren Methodenaufrufe Einfache Konsolenausgaben
Modellierung mit BlueJ Beteiligte Klassen: Kasse und Zufallsgenerator (Aggregation) Spieler (Assoziation) Objekte erzeugen Objekte verwenden Datenfelder inspizieren Methodenaufrufe Einfache Konsolenausgaben Übersichtlicher Quelltext!
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm)
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm) Entwurf einer GUI
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm) Entwurf einer GUI
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm) Entwurf einer GUI Anbindung der GUI: Datenfeld in GUI
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm) Entwurf einer GUI Anbindung der GUI: Datenfeld in GUI
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm) Entwurf einer GUI Anbindung der GUI: Datenfeld in GUI Ereignismethoden
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm) Entwurf einer GUI Anbindung der GUI: Datenfeld in GUI Ereignismethoden
Programmierung mit dem Java-Editor Wiedererkennung der Modellierung (UML-Diagramm) Entwurf einer GUI Anbindung der GUI: Datenfeld in GUI Ereignismethoden Testen der Funktionalität bequem möglich
Unterrichtsreihe: Einstieg mit BlueJ Figuren-Beispiel (Barnes und Kölling) Ticketautomat (Barnes und Kölling) Kleinere selbständige Projekte Waage, Bücherei, Heizungssteuerung Koordinatengeometrie Klassen: Gerade, Punkt, Parabel, Kreis Vorteil: Objekte aus der Mathematik bekannt Taschenrechner Einführung in Algorithmik
Unterrichtsreihe: Fortsetzung mit Java-Editor Spielautomat (wie eben gesehen) Selbständige Übung: Fahrkartenautomat Nutzung von BlueJ zur Modellierung! Datenstrukturen am Beispiel Lotto Modellierung der Klassen auch in BlueJ möglich. Implementierung und Testrahmen besser im Java-Editor
Weitere Informationen: Skript und Beispiellösungen auf http://projekte.gymnasium-odenthal.de/informatik/