Skip to content
Informatik · Klasse 5

Ideen für aktives Lernen

Funktionen und Prozeduren: Code wiederverwenden

Aktives Zerlegen und Strukturieren von Code fördert das algorithmische Denken, weil Schülerinnen und Schüler direkt erleben, wie Wiederverwendung Code effizienter und verständlicher macht. Durch konkrete Beispiele aus Scratch wird das abstrakte Konzept der Funktionen greifbar und anwendbar.

KMK BildungsstandardsKMK: Sekundarstufe I - AlgorithmenKMK: Sekundarstufe I - Problemlösen
15–30 Min.Partnerarbeit → Ganze Klasse4 Aktivitäten

Aktivität 01

Gruppenpuzzle20 Min. · Partnerarbeit

Paararbeit: Funktion für Figurbewegung

Schüler erstellen in Scratch eine Funktion, die eine Figur in eine Richtung bewegt. Sie testen sie in einem einfachen Labyrinth und passen Parameter an. Danach rufen sie die Funktion mehrmals auf.

Erklären Sie den Vorteil der Verwendung von Funktionen oder Prozeduren in der Programmierung.

ModerationstippBei der Paararbeit zur Figurbewegung achten Sie darauf, dass beide Partner abwechselnd die Rolle des Programmierers und des Erklärers einnehmen, um das gemeinsame Verständnis zu sichern.

Worauf zu achten istGeben Sie jedem Schüler ein Blatt mit einem einfachen Programm (z.B. in Scratch), das eine Figur mehrmals dieselbe Bewegung ausführen lässt. Bitten Sie die Schüler, eine Funktion zu erstellen, die diese Bewegung kapselt, und das Programm so umzuschreiben, dass es die Funktion nur einmal aufruft. Notieren Sie auf dem Ticket: 'Meine Funktion heißt: _____. Sie macht: _____.'

VerstehenAnalysierenBewertenBeziehungsfähigkeitSelbststeuerung
Komplette Unterrichtsstunde erstellen

Aktivität 02

Gruppenpuzzle30 Min. · Kleingruppen

Kleingruppen: Aufgabe zerlegen

Gruppen zerlegen eine komplexe Aufgabe wie ein Spiel in Schritte und kapseln wiederkehrende Teile in Prozeduren. Sie bauen ein Programm und präsentieren es. Reflexion über Vereinfachung folgt.

Analysieren Sie, wie Funktionen zur Strukturierung und Vereinfachung von Code beitragen.

ModerationstippBei der Aufgabezerlegung in Kleingruppen geben Sie gezielt Hilfestellung, wenn Schülerinnen und Schüler die Schritte nicht in sinnvolle Teilaufgaben unterteilen können.

Worauf zu achten istZeigen Sie ein kurzes Programmfragment, das eine einfache, sich wiederholende Aufgabe (z.B. das Zeichnen eines Quadrats) ohne Funktionen darstellt. Fragen Sie: 'Wie könnten wir diesen Code kürzer und besser lesbar machen, indem wir eine Funktion verwenden? Nennt die Schritte, die wir dafür brauchen.'

VerstehenAnalysierenBewertenBeziehungsfähigkeitSelbststeuerung
Komplette Unterrichtsstunde erstellen

Aktivität 03

Gruppenpuzzle15 Min. · Einzelarbeit

Individuell: Eigene Funktion entwickeln

Jeder Schüler schreibt eine Funktion für ein Muster, z. B. Sternzeichnen. Sie integrieren sie in ein größeres Programm und dokumentieren den Vorteil.

Entwickeln Sie ein Programm, das eine wiederkehrende Aufgabe in einer eigenen Funktion kapselt.

ModerationstippFordern Sie bei der individuellen Funktionsentwicklung die Schüler auf, ihre Lösung zunächst mit einem Partner zu besprechen, bevor sie den Code implementieren.

Worauf zu achten istStellen Sie die Frage: 'Stellen Sie sich vor, Sie bauen ein sehr großes Haus aus Legosteinen. Warum wäre es sinnvoll, die Anleitung für das Bauen einer Mauer als einen eigenen Schritt (eine Funktion) zu definieren, anstatt jedes Mal neu zu überlegen, wie man eine Mauer baut?' Sammeln Sie die Antworten der Schüler und diskutieren Sie die Vorteile der Wiederverwendbarkeit.

VerstehenAnalysierenBewertenBeziehungsfähigkeitSelbststeuerung
Komplette Unterrichtsstunde erstellen

Aktivität 04

Gruppenpuzzle25 Min. · Ganze Klasse

Ganzer Unterricht: Code-Vergleich

Klasse vergleicht ein Programm mit und ohne Funktionen. Gemeinsam identifizieren sie Vorteile und bauen ein Beispiel aus.

Erklären Sie den Vorteil der Verwendung von Funktionen oder Prozeduren in der Programmierung.

ModerationstippBeim Code-Vergleich moderieren Sie die Diskussion so, dass die Klasse aktiv Unterschiede zwischen den Lösungen benennt und gemeinsam die beste Struktur herausarbeitet.

Worauf zu achten istGeben Sie jedem Schüler ein Blatt mit einem einfachen Programm (z.B. in Scratch), das eine Figur mehrmals dieselbe Bewegung ausführen lässt. Bitten Sie die Schüler, eine Funktion zu erstellen, die diese Bewegung kapselt, und das Programm so umzuschreiben, dass es die Funktion nur einmal aufruft. Notieren Sie auf dem Ticket: 'Meine Funktion heißt: _____. Sie macht: _____.'

VerstehenAnalysierenBewertenBeziehungsfähigkeitSelbststeuerung
Komplette Unterrichtsstunde erstellen

Vorlagen

Vorlagen, die zu diesen Informatik-Aktivitäten passen

Nutzen, bearbeiten, drucken oder teilen.

Einige Hinweise zum Unterrichten dieser Einheit

Erfahrene Lehrkräfte beginnen mit visuellen Beispielen aus Scratch, weil Block-basierte Umgebungen das Konzept der Funktionen als 'Baukästen' veranschaulichen. Vermeiden Sie es, Funktionen zu früh mit Parametern zu überfrachten, sondern starten Sie mit einfachen, parameterfreien Prozeduren. Forschung zeigt, dass Schülerinnen und Schüler das Prinzip der Wiederverwendung besser verstehen, wenn sie selbst die Redundanz in unstrukturiertem Code erleben.

Am Ende können die Schülerinnen und Schüler wiederholte Code-Abläufe identifizieren und in wiederverwendbare Funktionen oder Prozeduren auslagern. Sie erkennen den Nutzen von Parametern und benennen konkrete Vorteile wie Kürze, Lesbarkeit und Wartbarkeit des Codes.


Vorsicht vor diesen Fehlvorstellungen

  • Während der Paararbeit zur Figurbewegung beobachten Sie, wie Schüler die repetitive Aufgabe in Scratch als einfache Wiederholungsschleife lösen, ohne die Notwendigkeit einer Funktion zu erkennen.

    Lenken Sie die Aufmerksamkeit auf den Code-Block, indem Sie fragen: 'Wie oft müssten wir diesen Block kopieren, wenn die Figur 20 Mal dieselbe Bewegung ausführen soll?' Vergleichen Sie dann die Lösung mit einer Funktion.

  • Während der Kleingruppenarbeit zur Aufgabezerlegung kopieren Schüler Code-Abschnitte, statt sie in eine Funktion auszulagern.

    Zeigen Sie auf den kopierten Code und fragen Sie: 'Was passiert, wenn wir die Bewegung der Figur ändern wollen? Müssen wir dann jeden kopierten Block einzeln anpassen?' Fordern Sie die Gruppe auf, stattdessen eine Funktion zu erstellen.

  • Während der individuellen Funktionsentwicklung argumentieren Schüler, dass Prozeduren das Programmverhalten nicht verändern.

    Fordern Sie den Schüler auf, sein Programm mit und ohne die erstellte Prozedur laufen zu lassen. Fragen Sie: 'Siehst du einen Unterschied in der Ausführung? Was ist einfacher zu ändern: der ursprüngliche Code oder die Funktion?'


In dieser Übersicht verwendete Methoden