Skip to content

Parameterübergabe und RückgabewerteAktivitäten & Unterrichtsstrategien

Aktive Lernmethoden eignen sich besonders gut für Parameterübergabe und Rückgabewerte, weil diese Konzepte durch praktisches Experimentieren und Fehleranalysen besser verständlich werden. Schülerinnen und Schüler begreifen die Unterschiede zwischen Call-by-Value und Call-by-Reference leichter, wenn sie selbst Code schreiben und Veränderungen live beobachten können.

Klasse 11Informatik in der Oberstufe: Algorithmen, Daten und Gesellschaft4 Aktivitäten20 Min.45 Min.

Lernziele

  1. 1Vergleichen Sie die Auswirkungen von Call-by-Value und Call-by-Reference auf Variablen in einem gegebenen Code-Snippet.
  2. 2Analysieren Sie die Konsequenzen fehlender Rückgabewerte für die Ausgabe einer Funktion anhand von zwei Beispielprogrammen.
  3. 3Erklären Sie anhand eines Beispiels, wie Parameter die Wiederverwendbarkeit einer Funktion erhöhen.
  4. 4Entwerfen Sie eine einfache Funktion, die Parameter entgegennimmt und einen berechneten Wert zurückgibt.

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

30 Min.·Partnerarbeit

Pair Programming: Call-by-Value vs. Reference

Paare schreiben eine Funktion, die eine Liste modifiziert, und testen Call-by-Value mit einer Kopie sowie Call-by-Reference mit dem Original. Sie protokollieren Änderungen und diskutieren Unterschiede. Abschließend tauschen sie Code aus und debuggen.

Vorbereitung & Details

Erklären Sie den Unterschied zwischen Call-by-Value und Call-by-Reference bei der Parameterübergabe.

Moderationstipp: Während der Pair-Programming-Aktivität ist es wichtig, dass beide Partner abwechselnd Code schreiben und Veränderungen kommentieren, um den Lernprozess zu vergleichen.

Setup: Gruppentische mit Zugang zu Recherchequellen

Materials: Dokumentation des Problemszenarios, KWL-Tabelle (Wissen, Wollen, Lernen) oder Inquiry-Framework, Ressourcenpool / Handapparat, Vorlage für die Ergebnispräsentation

AnalysierenBewertenErschaffenEntscheidungsfähigkeitSelbststeuerungBeziehungsfähigkeit
45 Min.·Kleingruppen

Small Groups: Rückgabewerte debuggen

Gruppen erhalten Code mit fehlenden return-Statements und analysieren Ausgaben. Sie ergänzen Rückgabewerte, testen Varianten und vergleichen Ergebnisse. Eine Präsentation der Lösungen schließt ab.

Vorbereitung & Details

Analysieren Sie die Auswirkungen fehlender Rückgabewerte auf die Funktionalität einer Funktion.

Moderationstipp: Bei der Debugging-Aktivität sollten die Schülerinnen und Schüler konkrete Fehlermeldungen ausgeben lassen, um die Bedeutung von Rückgabewerten zu erkennen.

Setup: Gruppentische mit Zugang zu Recherchequellen

Materials: Dokumentation des Problemszenarios, KWL-Tabelle (Wissen, Wollen, Lernen) oder Inquiry-Framework, Ressourcenpool / Handapparat, Vorlage für die Ergebnispräsentation

AnalysierenBewertenErschaffenEntscheidungsfähigkeitSelbststeuerungBeziehungsfähigkeit
20 Min.·Einzelarbeit

Individual: Parameter-Wiederverwendung

Jede Schülerin und jeder Schüler erstellt eine Funktion mit Parametern für Berechnungen, ruft sie mehrmals auf und passt Argumente an. Sie dokumentieren Vorteile gegenüber hartkodierten Werten.

Vorbereitung & Details

Begründen Sie die Notwendigkeit von Parametern für die Wiederverwendbarkeit von Funktionen.

Moderationstipp: Für die Einzelarbeit zur Parameter-Wiederverwendung benötigen die Lernenden klare Beispiele mit und ohne Parameter, um die Flexibilität direkt zu erleben.

Setup: Gruppentische mit Zugang zu Recherchequellen

Materials: Dokumentation des Problemszenarios, KWL-Tabelle (Wissen, Wollen, Lernen) oder Inquiry-Framework, Ressourcenpool / Handapparat, Vorlage für die Ergebnispräsentation

AnalysierenBewertenErschaffenEntscheidungsfähigkeitSelbststeuerungBeziehungsfähigkeit
25 Min.·Ganze Klasse

Whole Class: Szenario-Analyse

Die Klasse diskutiert reale Code-Beispiele mit und ohne Parameter. Jeder Schüler votet per Handzeichen zu Funktionalität, gefolgt von gemeinsamer Korrektur am Whiteboard.

Vorbereitung & Details

Erklären Sie den Unterschied zwischen Call-by-Value und Call-by-Reference bei der Parameterübergabe.

Moderationstipp: Bei der Szenario-Analyse als Klasse sollten Sie gezielt Fragen stellen, die die Schülerinnen und Schüler dazu bringen, ihre Annahmen zu begründen.

Setup: Gruppentische mit Zugang zu Recherchequellen

Materials: Dokumentation des Problemszenarios, KWL-Tabelle (Wissen, Wollen, Lernen) oder Inquiry-Framework, Ressourcenpool / Handapparat, Vorlage für die Ergebnispräsentation

AnalysierenBewertenErschaffenEntscheidungsfähigkeitSelbststeuerungBeziehungsfähigkeit

Dieses Thema unterrichten

Erfahrene Lehrkräfte beginnen mit einfachen, aber präzisen Beispielen, die die Unterschiede zwischen Call-by-Value und Call-by-Reference sichtbar machen. Sie vermeiden abstrakte Erklärungen und setzen stattdessen auf visuelle Darstellungen und schrittweise Code-Analysen. Wichtig ist, dass die Lernenden selbst Fehler machen und diese korrigieren, um ein tiefes Verständnis zu entwickeln. Rückmeldungen sollten stets auf konkreten Beobachtungen basieren und die Schülerinnen und Schüler dazu anregen, ihre eigenen Schlüsse zu ziehen.

Was Sie erwartet

Erfolgreiches Lernen zeigt sich darin, dass Schülerinnen und Schüler sicher zwischen Call-by-Value und Call-by-Reference unterscheiden, Rückgabewerte gezielt einsetzen und die Auswirkungen von Parametern auf die Wiederverwendbarkeit von Funktionen erklären können. Sie dokumentieren ihre Beobachtungen präzise und wenden Konzepte in neuen Kontexten an.

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 der Pair-Programming-Aktivität 'Call-by-Value vs. Reference' beobachten Sie, dass einige Schülerinnen und Schüler annehmen, Originaldaten würden bei Call-by-Value verändert.

Was Sie stattdessen lehren sollten

Nutzen Sie die Pair-Programming-Session, um gezielt zu fragen: 'Was passiert mit dem Originalwert, wenn wir die Funktion mit Call-by-Value aufrufen?' Fordern Sie die Schülerinnen und Schüler auf, den Code schrittweise auszuführen und die Speicheradressen zu vergleichen.

Häufige FehlvorstellungWährend der Debugging-Aktivität 'Rückgabewerte debuggen' nehmen einige Lernende an, dass Funktionen ohne Rückgabewert fehlerfrei arbeiten.

Was Sie stattdessen lehren sollten

Lassen Sie die Schülerinnen und Schüler in der Debugging-Session explizit Ausgaben mit print() hinzufügen, um zu sehen, dass None zurückgegeben wird. Diskutieren Sie im Anschluss, warum dies Kettenrufe unterbricht.

Häufige FehlvorstellungBei der Einzelarbeit 'Parameter-Wiederverwendung' glauben einige, dass Parameter optional sind und die Wiederverwendbarkeit nicht beeinflussen.

Was Sie stattdessen lehren sollten

Fordern Sie die Schülerinnen und Schüler auf, eine Funktion einmal mit und einmal ohne Parameter zu schreiben. Lassen Sie sie vergleichen, wie flexibel der Code in beiden Fällen ist und welche Szenarien jeweils möglich sind.

Ideen zur Lernstandserhebung

Kurze Überprüfung

Nach der Pair-Programming-Aktivität 'Call-by-Value vs. Reference' geben Sie den Schülerinnen und Schülern drei kurze Code-Snippets vor: eines mit Call-by-Value, eines mit Call-by-Reference und eines mit einer Funktion ohne Rückgabewert. Bitten Sie sie, für jedes Snippet kurz zu notieren, was die Ausgabe sein wird und warum.

Diskussionsfrage

Nach der Szenario-Analyse als Klasse stellen Sie die Frage: 'Warum ist es wichtig, dass Funktionen klare Rückgabewerte haben, besonders wenn sie Teil einer größeren Anwendung sind?' Leiten Sie eine Diskussion, die die Bedeutung für die Fehlerbehebung und die Zusammensetzbarkeit von Code hervorhebt.

Lernstandskontrolle

Nach der Einzelarbeit 'Parameter-Wiederverwendung' lassen Sie jede Schülerin und jeden Schüler eine Funktion schreiben, die zwei Zahlen als Parameter entgegennimmt, deren Summe berechnet und das Ergebnis zurückgibt. Bitten Sie sie, zusätzlich eine Zeile Code aufzuschreiben, die diese Funktion aufruft und das Ergebnis ausgibt.

Erweiterungen & Unterstützung

  • Fordern Sie schnelle Schülerinnen und Schüler auf, eine Funktion zu schreiben, die ein Array als Parameter entgegennimmt und dessen Elemente verdoppelt zurückgibt.
  • Für Schülerinnen und Schüler mit Schwierigkeiten bieten Sie ein Arbeitsblatt mit vorgegebenen Code-Snippets an, bei denen sie fehlende Parameter oder Rückgabewerte ergänzen müssen.
  • Für zusätzliche Vertiefung lassen Sie die Klasse ein Szenario entwerfen, in dem Call-by-Reference zu unerwarteten Ergebnissen führt, und diskutieren Sie Lösungsansätze im Plenum.

Schlüsselvokabular

ParameterEine Variable, die in der Funktionsdefinition angegeben wird und als Platzhalter für einen Wert dient, der bei einem Funktionsaufruf übergeben wird.
ArgumentDer tatsächliche Wert, der bei einem Funktionsaufruf an die Funktion übergeben wird und dem entsprechenden Parameter zugewiesen wird.
Call-by-ValueEine Methode der Parameterübergabe, bei der eine Kopie des Arguments an die Funktion übergeben wird. Änderungen innerhalb der Funktion beeinflussen das Originalargument nicht.
Call-by-ReferenceEine Methode der Parameterübergabe, bei der die Speicheradresse des Arguments an die Funktion übergeben wird. Änderungen innerhalb der Funktion beeinflussen das Originalargument direkt.
RückgabewertDer Wert, den eine Funktion nach ihrer Ausführung an den aufrufenden Code zurückgibt, oft das Ergebnis einer Berechnung oder Operation.

Bereit, Parameterübergabe und Rückgabewerte zu unterrichten?

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

Mission erstellen