Klasse 10 - Informatik

Diagramme

Ein wichtiges Ziel in der zehnten Klasse sollte das Modellieren und damit das sichere Beherrschen der verschiedene Diagrammarten sein. Zwar kann vieles mit den gängigen Programmen gelöst werden, aber nichtsdestotrotz möchte ich hier ein paar besser geeignete Software-Pakete vorstellen

 TypBeschreibung 
Anzeigen SoftwareSequenzdiagramme
Dieses Java-Programm lässt sich herunterladen und auf allen gängigen Betriebssystemen und Netzwerken installieren.
Java
Anzeigen InternetSequenzdiagramme
Dies ist eine reine Internet-Anwendung und kann daher ohne Installation benutzt werden. Das schöne dabei ist, dass das Diagramm mit Hilfe einer einfachen Sprache definiert wird. Das Ergebnis lässt sich dann als Bild herunterladen.
html/js

Zustandsautomaten

Anhand des Marienkäfers Kara lernen und erfahren die Schüler die Vor- und Nachteile von Zustandsautomaten. Später kann man auch die Java-Umgebung nutzen und so den Übergang zum nächsten Thema OOP begradigen.

Programmieren

Ab diesem Zeitpunkt wird in der Programmiersprache Java programmiert. Das ich Java gewählt habe und nicht Python oder C++, liegt in erster Linie daran, dass so die Schüler viele weitere Beispiele im Internet finden können und am leichtesten Rat finden können. Ich setze immer die Programmierumgebung BlueJ voraus und biete die Pakete auch so an.

Objektorientierte Programmieren zu lernen bzw. zu unterrichten ist ein durchaus komplizierter Prozess, da das Abstraktionsvermögen der Schüler, aber auch ihr Interesse und damit ihre Motivation stark variiert. Durch geeignete Software kann das aufgefangen werden. Eine dafür geeignete Software ist LEO.

 TypBeschreibung 
Paket SourceCodeObjekte, Klassen, Attribute, Methoden
Dieses Basis-Paket ermöglicht es den Schüler grundlegende geometrische Körper (Linie, Rechteck, Ellipse) zu zeichnen. Es werden dabei die vor allem die Begriffe Methode/Dienst und Konstruktor geübt.
Ein weiteres Paket mit Dreieck kann auch benutzt werden. Auch ein grundlegendes Paket mit Ein- und Ausgabemöglichkeit kann heruntergeladen werden.
BlueJ-Paket
Paket
Arbeitsblatt
SourceCodeVererbung
Betrachtet man die drei Klassen SQUARE, TRIANGLE, CIRCLE, etc. so lassen sich Gemeinsamkeiten erkennen. Ein guter Zeitpunkt um die Vererbung einzuführen.
BlueJ-Paket
Arbeitsblatt ÜbungenFelder 1
Übungen zum Trainieren des Umgangs mit Feldern. Ideal auch zur Vorbereitung auf Stegreifaufgaben.
pdf
Paket ÜbungenFelder 2
Grafische Animation des Bubblesort-Algorithmus. Größtenteils schon fertig. Muss nur noch angepasst werden.
BlueJ-Paket
Paket SourceCodeKomplexere Klassen
piktgramm Piktogramme bestehen aus einfachen geometrischen Objekten. Dabei können aber manche Klassen wie KREISe öfters benutzt werden. Also muss sich das Piktogramm mehrere Objekte vom gleichen Typ merken (1:n-Beziehung). Dies kann mit Feldern (engl. Arrays) gelöst werden.
Paket 2 (ohne Array),
Paket 3 (mit Array),
Paket 4 (mit main-Funktion),
Fertiges jar-Programm
BlueJ-Paket
Paket
Arbeitsblatt
SourceCodeEin- und Ausgaben
Wie lassen sich Eingaben innerhalb eines Java-Programms umsetzen. Am Beispiel der Notenberechnung werden zwei Möglichkeiten (Konsole, Dialogfenster) eingeführt. Dabei wird auch der Unterschied zwischen lokalen und globalen Variablen und das Schlüsselwort this eingeführt. Ebenso die das Feld (engl. Array).
BlueJ-Paket

Programmieren mit JavaScript

Viele einfache Aufgaben ließen sich auch mit JavaScript umsetzen. Einen Browser mit Debugger vorausgesetzt, eine erfolg versprechender Ansatz - vor allem wenn es um die grundlegenden Programmierstrukturen geht.

 TypBeschreibung 
Anzeigen SoftwareBresenham-Algorithmus
Mit Hilfe des Bresenham-Algorithmus erzeugen Computer ihre Linien auf dem Bildschirm.
JavaScript





G9 - Archiv

Automatentheorie

Zunächst steht eine Einführung in Automatentheorie anhand von Automat an. Später wird auf endliche Automaten gewechselt (JFLAP oder Exorciser).

Ich bevorzuge Exorciser, da dort automatisch Aufgaben generiert, gelöst und korrigiert werden können.

Klassen und Objekte

Da in der Informatik der Gedanken der Objektorientiertheit vorherrscht und relationale Datenbanken (MySql, Access, Oracle) diesen Gedanken aufgreifen, erfolgt zunächst eine Einführung in diese Problematik in der bereits einige weiterführende Punkte aufgegriffen werden. Dadurch erhoffe ich mir ein Denken in Ojekten zu fördern, dass das Modelieren später vereinfachen soll.

 TypBeschreibung 
Anzeigen Arbeitsblatt mit LösungObjekte, Klassen, Attribute, Methoden
Anhand von verschiedenen Autos wird der Begriff Klasse, Objekt (Realisierung einer Klasse), Attribut und Methode erarbeitet.
Lösung anzeigen
pdf
Anzeigen Arbeitsblatt mit LösungBeziehungen zwischen Klassen
Am Beispiel verschiedener Fahrzeuge und derer Komponenten wird der Begriff Relationship eingeführt.
Lösung anzeigen
pdf
Anzeigen Arbeitsblatt mit LösungBeipiel für Klassen
Verschieden Klassen eines Textverarbeitungsprogramms werden erkannt, definiert und zueinander in Bezihung gesetzt. Hier fällt auch zum ersten Mal der Begriff "Kardinalität".
Lösung anzeigen
pdf

Einführung

Um eine erstes Gefühl für das Darstellen der Informationen zu bekommen, wird eine Software benötigt, in der man Daten und Tabellen und diese wiederunm miteinander verknüpfen kann, also eine Datenbank. Eine vereinfachte Version einer Datenbank habe ich selbst entwickelt: Übungsdatenbank.

Ein fortgeschrittene Anwendung wäre TurboDbAdmin.

Für Datensätze kann man bei www.generatedata.com Daten erzeugen lassen.

Nach dem jetzt die Sichtweise klar geworden sein sollte (alles ist ein Objekt mit Attrbuten und Methoden und sein Bauplan ist die Klasse), kommt nun der Einstieg in die Datenbankwelt. Dabei geht es aber zunächst noch ein bisschen weiter um die Theorie, bevor es dann im nächsten Kapitel um die konkrete Umsetzung geht. Ganz im Sinne von: "Man muss seinen Feind kennenlernen, wenn man ihn bezwingen möchte."

Viel zum Thema gibt es wie immer bei Wikipedia

 TypBeschreibung 
Anzeigen Arbeitsblatt mit Lösung7 Anforderungen
Arbeitsblatt zu den sieben Anforderungen Redundanz, Inkonsistenz, beschränkte Zugriffsmöglichkeiten, Mehrbenutzerbetrieb, Verlust von Daten und Integritätsverletzung.
Lösung anzeigen
pdf
Anzeigen Arbeitsblatt mit LösungDBMS und DB
Aus den Anforderungen an eine Datenbank haben sich im Laufe der Zeit unterschiedliche Realisierugen entwickelt. Welche dies sind, wird an Hand des Arbeitsblattes besprochen.
Lösung anzeigen
pdf
Anzeigen Arbeitsblatt mit Lösung3-Schichten Modell
Je nach Rolle eines Datenbankbenutzers gibt es auch unterschiedliche, konkrete Anforderung an eine DB (nicht zu verwechseln mit DBS). Diese Anforderungen werden durch das 3-Schichten Modell nach ANSI/SPARC gelöst.
Lösung anzeigen
pdf

Entity-Relationship-Modell

 TypBeschreibung 
Anzeigen Arbeitsblatt mit LösungEinführung
Das ER-Modell ist das Hilfsmittel zur Erstellung eines guten konzeptuellen Schemas einer Datenbank. Hier werden zunächst die Grundlagen gelegt. Später wird auf die Wertgkeit von Relationship-Typen eingangen, sowie mehrstellige Relationship-Typen dargestellt.
Lösung anzeigen
pdf
Anzeigen Arbeitsblatt mit LösungÜbungen
Anhand zweier Übungen soll der Umgang mit ER-Diagrammen gefestigt werden.
Lösung anzeigen
pdf
-- --Relationen
Wie kommt man vom ER-Diagramm nun zu den Tabellen (Relationen), die in der Datenbank abgespeichert werden?
--

SQL-Abfragen

 TypBeschreibung 
Anzeigen ArbeitsblattÜbungen
Die Schule mit Klassen, Schülern und Lehrern soll zunächst modelliert und mit Daten gefüllt werden. Anschließend werden SQL-Abfrage geübt.
Dieses Beispiel kann auch dazu dienen in das Thema Normalformen einzuführen, da es naheliegt eine Relation Schüler zu definieren, die als Attribut die Adresse in der Form "Strasse 10, 12345 Stadt" besitzt. Abfragen nach dem Wohnort sind dann nicht möglich (1. Normalform). Das Gleiche gilt für die Klasse "6a" (kein Sortieren nach Jahrgangsstufen), Fächer ("M,Ph,Inf,D,E,F,G").
Lösung anzeigen
pdf
Anzeigen ArbeitsblattÜbungen zu SQL
Reine Übungsblatt zum Üben von SQL.
Lösung anzeigen
pdf
Anzeigen ArbeitsblattJoin
Nach vier kurzen SQL-Aufgaben soll ein Join mal von Hand durchgeführt werden.
Lösung anzeigen
pdf
Anzeigen ArbeitsblattNormalformen
Zwei Übungsaufgaben zu dem Thema Schlüsselkandidaten (Primär- und Fremdschlüssel) und Normalformen.
Lösung anzeigen
pdf

Kontrollen

 TypBeschreibung 
Starten LernkartenDatenbanken
Lernen mit Karteikarten zu obigem Thema. Im Lermodus werden die Antworten gleich angezeigt. Sonst erscheint nur die Frage.
Speichern
html/js
Starten FragenDatenbanken
Dieser Fragenkatalog ist leider ohne Antworten.
html/js

Programmieren

In das strukturierte Programmieren kann mit Hilfe der EOS-Sequenz (Turtle) aus der 7. Klasse eingeführt werden.

Ich stelle daher ein Paket "Logo" zur Verfügung mit dem man mittels JavaScript Turtle-Programmierung betreiben kann.

Genutzt wird dabei weiter folgende Software:

  1. Editor oder Wordpad
  2. Ein Browser (vorzugsweise Firefox)
  3. Colorpicker - Farbauswähler

An Stelle von einer Programmierung mit JavaScript, die den Vorteil bietet, das man näher an einer echten Sprache wie JAVA ist, kann man auch die Spiele-Entwicklungsumgebung Gamemaker benutzen. Sie ist an Karol angelehnt, aber der Spaß ist wohl ungleich höher. Ein interessanter Unterrichtsansatz wäre daher wohl zunächst die Grundlagen mit Karol zu erarbeiten und dann ein Spiel umzusetzen. Diesen Ansatz werde ich wohl beim nächsten Mal verfolgen.

Einführung

Der Unterricht wird um das Programm EOS (erste objektorientierte Sprache) aufgebaut. Es lässt sich bei Martin Pabst herunterladen.

Eine andere Möglichkeit wäre das Benutzen von Java und einer Turtle-Klasse.

 TypBeschreibung 
Anzeigen TheorieÜberlick
Eine Zusammenfassung der wichtigsten Befehle und eine Darstellung der Klasse TURTLE mit allen Attributen und Methoden.
pdf
Anzeigen AufgabeSteuern der Schildkröte
Die Schildkröte soll von den Schülern so gesteuert werden, das ein Quadrat der Seitenlänge 100 ensteht. Anschließend wird das Haus vom Nikolaus gezeichnet. Mehrfach auftretende Sequenzen werden dann in Methoden ausgelagert.

Weitere Aufgaben:
  1. Zeichne ein Quadrat.
  2. Zeichne ein Quadrat auf einer Ecke.
  3. Zeichne ein 6-Eck mit allen Diagonalen.
  4. Zeichne das Haus vom Nikolaus.
pdf
Anzeigen AufgabeZählschleifen
Das Haus vom Nikolaus wird nun mehrfach gezeichnet und durch einen zusätzlichen Parameter verschieden groß gezeichnet.
pdf
Anzeigen AufgabeVerzweigung
Das Haus vom Nikolaus wird weiter verändert: Es soll eine Reihe von größer und kleiner werdenden Häuser gezeichnet werden.
Anschließend sollen die Schüler ein Programm zum Zeichnen der Skyline von Manhatten programmieren bei dem die Farbe der Häuser als zusätzlicher Parameter übergeben wird.
Zeitdauer: 4-5 Std.
pdf
Anzeigen AufgabeSchleifen mit Abbruchbedingung
Die Schüler lernen nun noch die Schleifen mit Abbruchbedinung kennen. Das größer und kleiner werden der Häuser wird nun mit Hilfe dieser neuen Schleifenart umgesetzt.
Das hier vorliegende Dokument kann bei interessierten oder höheren Klassen eingesetzt werden. HIer könnte man auch ein Projekt Natur und Geometrie umsetzen.
pdf
Anzeigen AufgabeÜbungen
Die Schüler bekommen wieder die Gelegenheit selbst tätig zu werden. Ziel sollen besondere Muster werden.
html/js
Anzeigen Theorie, AufgabenFlussdiagramme
Zusammenfassung der wichtigsten Flussdiagramme mit abschließenden Aufgaben zur Turtle.
pdf
Anzeigen AufgabeDas 3. Potenzgesetz
Mit Hilfe meines turtle-Pakets wird das dritte Potenzgesetz umgesetzt.
pdf

Effizienz von Algorithmen

Anhand verschiedener Such- und Sortierverfahren wird das Effizienzverhalten dieser Algorithmen verglichen bewertet.

 TypBeschreibung 
Anzeigen SpielSortieralgorithmen
Arbeitsblatt mit Zahlen zum pratkischen Durchspielen verschiedener Sortieralgorihtmen.
pdf