Skip to content

Modularisierung und FunktionenAktivitäten & Unterrichtsstrategien

Aktive Lernformen wie Pair Programming oder Refactoring machen die Vorteile der Modularisierung für Schülerinnen und Schüler direkt erfahrbar. Durch das praktische Zerlegen und Strukturieren von Code erkennen sie selbst, wie komplexe Aufgaben handhabbar werden und Redundanzen verschwinden.

Klasse 9Digitale Welten Gestalten: Informatik und Gesellschaft4 Aktivitäten20 Min.45 Min.

Lernziele

  1. 1Schülerinnen und Schüler zerlegen ein gegebenes Programmierproblem in mindestens drei kleinere Teilprobleme und definieren für jedes Teilproblem eine eigene Funktion.
  2. 2Schülerinnen und Schüler analysieren und modifizieren eine bestehende Funktion, indem sie mindestens einen neuen Parameter hinzufügen und dessen Einfluss auf die Funktionalität erklären.
  3. 3Schülerinnen und Schüler erstellen eine neue Funktion, die einen berechneten Wert als Rückgabewert verwendet, und demonstrieren dessen korrekte Nutzung in einem Hauptprogramm.
  4. 4Schülerinnen und Schüler vergleichen zwei Code-Abschnitte, die dieselbe Funktionalität implementieren, und begründen, welcher Abschnitt durch Modularisierung besser lesbar und wartbar ist.

Möchten Sie einen vollständigen Unterrichtsentwurf mit diesen Lernzielen? Mission erstellen

30 Min.·Partnerarbeit

Pair Programming: Rechenfunktion bauen

Paare definieren eine Funktion zur Flächenberechnung eines Rechtecks mit Länge und Breite als Parameter. Sie testen mit verschiedenen Werten und erweitern um Rückgabewert. Diskutieren anschließend Vorteile gegenüber inline-Code.

Vorbereitung & Details

Erklären Sie, wie die Zerlegung eines Problems in Teilprobleme die Programmierung vereinfacht.

Moderationstipp: Fordern Sie beim Pair Programming klare Rollenverteilung ein: Eine Schülerin oder ein Schüler schreibt, die andere oder der andere überprüft und erklärt.

Setup: Präsentationsbereich im vorderen Teil des Raumes oder mehrere Lernstationen

Materials: Themen-Zuweisungskarten, Vorlage zur Unterrichtsplanung, Feedbackbogen für Mitschüler, Materialien für visuelle Hilfsmittel

VerstehenAnwendenAnalysierenErschaffenSelbststeuerungBeziehungsfähigkeit
45 Min.·Kleingruppen

Small Groups: Code-Refactoring

Gruppen erhalten redundanten Code für eine Spielschleife. Sie zerlegen in Funktionen mit Parametern, testen und vergleichen alte mit neuer Version hinsichtlich Länge und Klarheit. Präsentieren Änderungen.

Vorbereitung & Details

Analysieren Sie die Rolle von Parametern und Rückgabewerten in Funktionen.

Moderationstipp: Geben Sie beim Code-Refactoring konkrete Vorgaben vor, z.B. 'Reduziere die Zeilen um 30% durch Funktionen' – das macht den Erfolg messbar.

Setup: Präsentationsbereich im vorderen Teil des Raumes oder mehrere Lernstationen

Materials: Themen-Zuweisungskarten, Vorlage zur Unterrichtsplanung, Feedbackbogen für Mitschüler, Materialien für visuelle Hilfsmittel

VerstehenAnwendenAnalysierenErschaffenSelbststeuerungBeziehungsfähigkeit
20 Min.·Ganze Klasse

Whole Class: Funktions-Debugging

Klasse analysiert fehlerhaften Code mit falschen Parametern gemeinsam am Beamer. Jeder schlägt Korrekturen vor, testet live und stimmt über beste Lösung ab. Notiert Lernerfahrungen.

Vorbereitung & Details

Begründen Sie, wie Modularisierung die Lesbarkeit und Wartbarkeit von Software erhöht.

Moderationstipp: Nutzen Sie beim Funktions-Debugging absichtlich fehlerhaften Code, damit Schülerinnen und Schüler die Fehler selbst finden und korrigieren müssen.

Setup: Präsentationsbereich im vorderen Teil des Raumes oder mehrere Lernstationen

Materials: Themen-Zuweisungskarten, Vorlage zur Unterrichtsplanung, Feedbackbogen für Mitschüler, Materialien für visuelle Hilfsmittel

VerstehenAnwendenAnalysierenErschaffenSelbststeuerungBeziehungsfähigkeit
25 Min.·Einzelarbeit

Individual: Persönliche Funktion

Jeder Schüler schreibt eine Funktion für persönliche Aufgabe, z.B. String-Manipulation mit Parametern. Testet eigenständig, tauscht mit Nachbar und iteriert basierend auf Feedback.

Vorbereitung & Details

Erklären Sie, wie die Zerlegung eines Problems in Teilprobleme die Programmierung vereinfacht.

Moderationstipp: Lassen Sie bei der persönlichen Funktion die Schülerinnen und Schüler ihre Funktion vorstellen und begründen, warum sie gerade diese Parameter gewählt haben.

Setup: Präsentationsbereich im vorderen Teil des Raumes oder mehrere Lernstationen

Materials: Themen-Zuweisungskarten, Vorlage zur Unterrichtsplanung, Feedbackbogen für Mitschüler, Materialien für visuelle Hilfsmittel

VerstehenAnwendenAnalysierenErschaffenSelbststeuerungBeziehungsfähigkeit

Dieses Thema unterrichten

Erfahrene Lehrkräfte beginnen mit kleinen, greifbaren Beispielen, bevor sie zu komplexen Problemen übergehen. Wichtig ist, dass Schülerinnen und Schüler die Vorteile von Modularisierung selbst erfahren, etwa durch den Vergleich von unstrukturiertem und strukturiertem Code. Vermeiden Sie Frontalunterricht zu Parameter-Scope – lieber praktische Beispiele zeigen, die den Unterschied klar machen. Forschung zeigt, dass aktives Refactoring nachhaltiger wirkt als theoretische Erklärungen.

Was Sie erwartet

Erfolgreiches Lernen zeigt sich, wenn Schülerinnen und Schüler Code selbstständig in Funktionen strukturieren, Parameter sinnvoll nutzen und Rückgabewerte gezielt einsetzen. Sie können erklären, warum ihre Lösung effizienter ist als der ursprüngliche Code und wie Parameter die Flexibilität erhöhen.

Diese Aktivitäten sind ein Ausgangspunkt. Die vollständige Mission ist das Erlebnis.

  • Vollständiges Moderationsskript mit Lehrkraft-Dialogen
  • Druckfertige Schülermaterialien, bereit für den Unterricht
  • Differenzierungsstrategien für jeden Lerntyp
Mission erstellen

Vorsicht vor diesen Fehlvorstellungen

Häufige FehlvorstellungWährend Pair Programming: Rechenfunktion bauen beobachten Sie, wie Schülerinnen und Schüler Funktionen als bloße Code-Wiederholung sehen.

Was Sie stattdessen lehren sollten

Nutzen Sie die Diskussion nach dem Pair Programming, um gemeinsam zu analysieren, wie viele Codezeilen durch die Funktion eingespart wurden und warum der Code nun leichter zu warten ist.

Häufige FehlvorstellungWährend Pair Programming: Rechenfunktion bauen achten Sie auf die Vermischung von Parametern mit globalen Variablen.

Was Sie stattdessen lehren sollten

Lassen Sie die Schülerinnen und Schüler in der Pair-Programming-Phase bewusst Testfälle mit unterschiedlichen Parameterwerten durchführen und das Verhalten der Funktion dokumentieren.

Häufige FehlvorstellungWährend Whole Class: Funktions-Debugging bemerken Sie, dass Schülerinnen und Schüler Rückgabewerte als optional betrachten.

Was Sie stattdessen lehren sollten

Stellen Sie in der Debugging-Runde absichtlich eine Funktion ohne Rückgabewert vor und lassen Sie die Schülerinnen und Schüler den Fehler selbst finden und korrigieren.

Ideen zur Lernstandserhebung

Kurze Überprüfung

Nach Code-Refactoring: Zeigen Sie den Schülerinnen und Schülern ein Programm mit offensichtlicher Code-Redundanz und lassen Sie sie auf einem Arbeitsblatt die redundanten Teile markieren und eine eigene Funktion entwerfen. Fragen Sie: 'Welche Vorteile hat Ihre neue Funktion gegenüber dem ursprünglichen Code?'

Lernstandskontrolle

Nach Pair Programming: Rechenfunktion bauen geben Sie jeder Schülerin und jedem Schüler eine Karte mit einer einfachen Aufgabe (z.B. 'Berechne den Flächeninhalt eines Rechtecks'). Sie schreiben eine Funktion mit mindestens einem Parameter und einem Rückgabewert und erklären auf der Rückseite, warum sie diesen Parameter gewählt haben.

Diskussionsfrage

Während Small Groups: Code-Refactoring teilen Sie die Klasse in Kleingruppen ein und geben jeder Gruppe ein komplexeres Problem (z.B. 'Simuliere das Wetter für einen Tag'). Die Schülerinnen und Schüler zerlegen das Problem in Teilprobleme, benennen Funktionen und diskutieren: 'Wie hilft diese Zerlegung dabei, das Gesamtproblem zu lösen und den Code übersichtlicher zu gestalten?'

Erweiterungen & Unterstützung

  • Challenge: Fordern Sie die Schülerinnen und Schüler auf, eine Funktion zu schreiben, die mehrere Parameter akzeptiert und eine mathematische Berechnung mit Bedingungen (z.B. Rabattberechnung) durchführt.
  • Scaffolding: Geben Sie Schablonen mit unvollständigen Funktionen vor, bei denen die Schülerinnen und Schüler nur die fehlenden Teile ergänzen müssen.
  • Deeper: Lassen Sie die Schülerinnen und Schüler eine Bibliothek mit eigenen Funktionen erstellen, die sie in zukünftigen Projekten wiederverwenden können.

Schlüsselvokabular

FunktionEin benannter Block von Code, der eine spezifische Aufgabe ausführt und bei Bedarf mehrfach aufgerufen werden kann. Funktionen helfen, Code zu organisieren und Wiederholungen zu vermeiden.
ParameterVariablen, die einer Funktion beim Aufruf übergeben werden, um ihr Verhalten zu steuern oder ihr Daten bereitzustellen. Sie ermöglichen flexible und wiederverwendbare Funktionen.
RückgabewertDer Wert, den eine Funktion nach ihrer Ausführung an den aufrufenden Programmteil zurückgibt. Dies ermöglicht die Weiterverarbeitung von Ergebnissen.
ModularisierungDas Aufteilen eines komplexen Programms in kleinere, unabhängige und wiederverwendbare Module (oft Funktionen). Dies verbessert die Übersichtlichkeit und Wartbarkeit des Codes.
Code-RedundanzDas mehrfache Vorkommen identischer oder sehr ähnlicher Code-Abschnitte in einem Programm. Modularisierung hilft, Redundanz zu vermeiden.

Bereit, Modularisierung und Funktionen zu unterrichten?

Erstellen Sie eine vollständige Mission mit allem, was Sie brauchen

Mission erstellen