Licht und ProgrammierenITBO-Teilmodul-1: Unterschied zwischen den Seiten

Aus ZUM-Unterrichten
(Unterschied zwischen Seiten)
K (hat „Optik/Unterrichtsreihe Licht/Licht“ nach „Optik/Licht“ verschoben: kürzer)
 
KKeine Bearbeitungszusammenfassung
Markierung: 2017-Quelltext-Bearbeitung
 
Zeile 1: Zeile 1:
{{Kurzinfo-2|Idee|gut}}
{{DISPLAYTITLE:Programmieren ITBO - Teilmodul 1}}  
Dieser Artikel kann als Einstieg in eine [[Optik#Unterrichtsreihe Optik|Unterrichtsreihe Optik]] genutzt werden.


==Licht und Lichtausbreitung==
===Was stellen wir uns unter Licht vor?===
{{Idee|
:Brainstorming, Antworten der Schüler sammeln und an die Tafel schreiben.


'''Zentralfrage:''' „Können wir Licht sehen“?}}
[[ITBO Modul Programmieren|← zurück zur Startseite]]


{{Versuch|:Eine Glühlampe in einem Gehäuse strahlt die Wand an. Es entsteht ein Lichtkreis.}}
<br />


{{Versuch|:Vor dem Lichtfleck an der Wand stellen wir einen innen geschwärzten Pappkasten. Der Raum versinkt in Dunkelheit.}}
=='''Anleitung für die SuS im Open Document Format (ODF)'''==
{{Box|Download|[[Datei:ProgrammierenTeil1StudentEditionV4.odt|mini]]|Download
}}


{{Versuch|:Wir halten ein Buch in den Raum zwischen Lampe und Pappkasten. Das Buch ist sofort zu sehen.}}


{{Versuch|:In den Lichtkegel schütteln wir einen Lappen mit Kreidestaub aus. Der Weg, den das Licht nimmt, wird sichtbar. (Statt des Kreidestaubs kann auch mit einer Sprühflasche eine Tröpfchennebel in den Lichtweg gesprüht werden. Achtung: Eventuell wird dabei der Boden durch die Nässe rutschig.)}}
=='''Handreichung für die Lehrperson'''==
{{Box|Download|[[Datei:ProgrammierenTeil1TeacherEditionV4.odt|mini]]|Download
}}


{{Merke|:Licht selbst ist nur sichtbar, wenn es direkt auf die Netzhaut trifft. Gegenstände nehmen wir nur dann wahr, wenn sie Licht in unser Auge streuen. Genau genommen bleibt der Körper weiterhin unsichtbar, denn das, was wir sehen, ist nicht der Gegenstand, sondern das durch ihn gestreute Licht, welches auf unsere Netzhaut trifft und eine biochemische Reaktion auslöst.  
{{Box|Ziele|* Die SuS lernen die Programmierumgebung Scratch kennen und nutzen, um eigene Programmierprojekte zu eröffnen und zu verwalten.


* Sie lernen grundlegende Elemente der Programmiersprache Scratch kennen und wenden sie an, um erste einfache Programme zu «schreiben».
* Die SuS reflektieren die Erfahrungen, die sie beim Programmieren machen.
* Sie lernen (ganz ohne theoretischen Ballast) auch grundlegende Konzepte «professioneller» Programmierung kennen (Objekt- und Ereignisorientierung, Prozesskommunikation).|Kurzinfo
}}
}}


===Lichtmodelle===


{{Idee|
==='''Einführung'''===
Klärung des Begriffs „Modell“ in der Physik.
 
Brainstorming zu Lichtvorstellungen (Erklärung für einen Blinden)}}
:Die Vorkenntnisse der SuS an einer Fachmittelschule bezüglich des Moduls Programmieren werden sehr unterschiedlich sein und sich im Verlauf der kommenden Jahre weiter verändern. Je nach Situation in der Klasse muss die Lehrperson mehr führen oder mehr begleiten.
 
:Günstig ist auf jeden Fall die Bildung von Zweiergruppen, um Diskussion und Reflexion zu fördern. Ist die Heterogenität in einer Klasse sehr gross, können vielleicht die Schülerinnen und Schüler mit Erfahrung im Programmieren die Begleitung von Gruppen übernehmen; eventuell können die Aufgaben des Teilmoduls 1 für die Schülerinnen und Schüler mit entsprechenden Vorkenntnissen offener formuliert werden (z.B. anstelle des vorgegebenen Zündholzrätsels ein selbst gestaltetes Memory oder Puzzle).
 
<br />
 
==='''Die persönliche Programmierumgebung einrichten'''===
 
:Die SuS sollen auf [https://scratch.mit.edu scratch.mit.edu] ein Konto anlegen (Scratcher werden / Join Scratch). Um das Anlegen des Kontos zu bestätigen, benötigen sie eine gültige E-Mail-Adresse. Noch nicht volljährige Schülerinnen und Schüler nutzen dafür idealerweise eine Mailadresse ohne Klarnamen oder weitere Angaben, die auf ihre Person zurückschliessen lassen. Volljährige SuS und insbesondere angehende Lehrpersonen sind freier in der Wahl ihrer E-Mail-Adresse. Auf jeden Fall sollten sie ein Lehrer-Benutzerkonto anlegen, damit sie später über alle Möglichkeiten verfügen (z.B. zur Weitergabe der Programme).
 
:Es kann vorkommen, dass einzelne SuS das Anlegen eines Kontos aus persönlichen Gründen verweigern. Auch ohne ein Konto anzulegen, können sie das Modul «Programmieren» absolvieren. Sie müssen dazu ihre Scratch-Projekte jeweils auf ihren Rechnern lokal speichern und von dort wieder laden. Scratch speichert in diesem Fall während dem Arbeiten nicht automatisch!


{{Merke|:Licht stammt aus Lichtquellen (Sonne, Kerze, Lampe...). Man stellt sich vor, Licht besteht aus kleinen Teilchen, den Photonen. Diese werden aus den Lichtquellen mit hoher Geschwindigkeit herausgeschleudert. Das an uns vorbeiflutende Licht ist nicht sichtbar, da Licht auf Netzhaut treffen muss um eine biochemische Reaktion auszulösen. Wir sehen Körper nur dann, wenn sie Licht in unser Auge streuen. Genau genommen bleibt der Körper weiterhin unsichtbar, denn das was wir sehen ist nicht der Gegenstand, sondern das durch ihn gestreute Licht, welches auf unsere Netzhaut trifft und eine biochemische Reaktion auslöst.  
:Die SuS können Scratch bei Bedarf auch auf ihren persönlichen Geräten installieren (mit Ausnahme von mobilen Apple-Geräten, d.h. iPhone und iPad).


<br />
==='''Scratch kennenlernen und ein erstes Programm selber machen'''===
<br />
===='''Das Beispielprogramm: ein Zündholzrätsel'''====
<br />
[[Datei:Zündholzrätsel (Bildschirmaufnahme).png|zentriert|mini|600x600px]]
<br />
:Dem ersten Programm liegt die Idee zu Grunde, dass ein bestimmtes Problem gelöst werden kann, indem mit einem Programm auf dem Computer ein ausgewählter Teil der Wirklichkeit abgebildet wird (ein Modell gebildet wird). Im Fall unseres ersten Programms sind das Zündhölzer, die auf einer Fläche ausgelegt, verschoben und gedreht werden können.
:Die Erläuterungen in der Anleitung zum Teil 1 des Moduls «Programmieren» sollen den SuS helfen, ein solches Programm mit Scratch Schritt für Schritt selber zu machen. Die Lehrperson beobachtet und hilft wenn nötig.
<br />
===='''Die Komponenten der Programmierumgebung Scratch'''====
:<u>Bühne</u>: Die Sus sollen zunächst die Bühne und deren Gestaltungsmöglichkeiten kennenlernen.
:<u>Objekte (Figuren)</u>: In Scratch spielen die Figuren (Sprites) auf der Bühne Rollen. Die Figuren haben Eigenschaften (z.B. Grösse, Position), und Skripts beschreiben ihre (Re-) Aktionen (auf Ereignisse wie z.B. das Anklicken der Startflagge).
:Aus theoretischer Sicht entspricht dieses Konzept der objekt- und ereignisorientierten Programmierung. Die Figuren sind die Objekte; die Objekte werden durch ihre Eigenschaften (Konstanten, Variablen) und (Re-) Aktionen (Methoden) charakterisiert. Die SuS sollen die Figuren aber ohne theoretischen Ballast als Objekte kennen lernen.
:Objekte können in der Programmierumgebung dupliziert werden, dies vereinfacht das Erzeugen von mehreren gleichartigen Objekten.
:Objekte können auch während des Programmablaufs dynamisch erzeugt werden. Der betreffende Befehl heisst «erzeuge Klon von ...». Im Modul Programmieren verwenden wir das dynamische Erzeugen (Klonen) von Objekten aber nicht.
:→ Den SuS muss die Bilddatei [https://openclipart.org/detail/314823/match-kibrit Zündholz.svg]  als «Kostüm» für die Objekte des Zündholzrätsels zur Verfügung gestellt werden (z.B. auf einer gemeinsamen Ablage für das gesamte Modul).
:<u>Das Programm speichern, beschreiben und veröffentlichen</u>: Diejenigen SuS, die ein Konto angelegt haben, können ihre Programme als Projekte speichern und bearbeiten. Dazu gehört eine Beschreibung des Programms für Nutzer:innen, die vor allem nötig ist, wenn das Programm veröffentlicht wird.
:Die Programmbeschreibung soll auch aufzeigen, dass Programmieren nicht nur Kommunikation mit dem Computer, sondern auch Kommunikation mit Menschen (die das Programm nutzen oder weiterentwickeln) darstellt.
{{Box|Reflexion|* Das Zündholzrätsel ist nun bereits fertig. Sie können es anderen Personen zugänglich machen oder selbst nutzen, um das Zündholzrätsel zu lösen.
* Im Mittelpunkt stehen die Objekte (in diesem Fall die Zündhölzer) mit ihren Eigenschaften (Aussehen, Grösse, Position, Lage). Dieses Programmier-Konzept heisst Objektorientierung. Allerdings agieren die Objekte in unserem Programm (noch) nicht.
* Im Bearbeitungsmodus («Schau hinein») können Sie die Objekte auf der Bühne aber verschieben und drehen. Die dazu nötigen Befehle an den Computer haben die Programmierer:innen von Scratch realisiert.|Hervorhebung1
}}
}}




== Primäre und sekundäre Lichtquellen ==


'''Primäre Lichtquellen''' sind Körper, die Licht selbst aktiv aussenden (z.B. die Sonne). Körper, die erst beleuchtet werden müssen, damit sie Licht aussenden, sind '''sekundäre Lichtquellen''' (z.B. der Mond).


====='''Objekte und Aktionen'''=====


==Vom Lichtbündel zum Lichtstrahl==


{{Frage|Wie breitet sich das Licht aus?}}
:Bis zu diesem Zeitpunkt haben die SuS den Objekten erst Eigenschaften zugewiesen, aber noch keine Skripte (Aktionen).


{{Versuch|:Eine offene Glühbirne wird eingeschaltet.}}
:Die Formulierung von Skripten wird anhand der für die Startaufstellung des Zündholzrätsels nötigen Initialisierung und einer Textausgabe eingeführt.


{{Merke|:Licht breitet sich nach allen Seiten aus.
:Die SuS müssen nun eigene Skripte «schreiben». Das entspricht wahrscheinlich dem, was sich die SuS unter «Programmieren» vorstellen. Es ist aber wichtig, dass sich die Schülerinnen und Schüler bewusst werden, dass auch die bisherigen Tätigkeiten (Objekte erzeugen, duplizieren, positionieren, usw.) und die dazu angestellten Überlegungen zum Programmieren gehören!
}}


:Um die Zündhölzer korrekt zu positionieren, müssen die SuS das Koordinatensystems der Bühne von Scratch kennen. Abbildung 11 in der Anleitung stellt dieses Koordinatensystem vor.


{{Frage|Kann Licht um Ecken gehen, d.h. können Photonen auf geknickten oder gekrümmten Wegen verlaufen?}}
:Die Textausgabe zur Erläuterung des Zündholzrätsels dient dazu, das Konzept der Erweiterungsblöcke von Scratch einzuführen. Die SuS benötigen den Block «Text zu Sprache».


{{Versuch|:Darstellung des Lichtkegels mittels Mattscheibe, sowie Loch- und Spaltblende.}}




[[Bild:Opt_001.gif|center]]


Licht breitet sich geradlinig aus. Die Photonen bewegen sich auf Geraden.
====='''Prozesskommunikation'''=====
Wird ein Lichtkegel immer weiter eingeengt, so gelangen wir zu einem Lichtstrahl. Ein Lichtstrahl ist vorstellbar als die Bahn, auf der sich die Photonen bewegen.


==Wie groß ist die Lichtgeschwindigkeit?==


[[Galileo Galilei]] ging dieser Frage bereits vor 400 Jahren nach.
:Im nächsten Schritt lernen die SuS den Mechanismus des Nachrichtenaustauschs zwischen Objekten kennen. Der Nachrichtenaustausch ermöglicht hier vor allem die Synchronisation von Skripten (Prozesskommunikation).
Er postierte zwei Leute mit Laternen auf verschiedenen Bergen.
Er erlangte keine zufriedenstellenden Ergebnisse.


Dem Franzosen {{wpde|Hippolyte Fizeau|Fizeau}} gelang 1849 die Messung der Lichtgeschwindigkeit mit einer sich drehenden Lochscheibe.
:Damit wird ersichtlich, dass Objekte in Scratch mehrere Skripte umfassen können (→ objektorientierte Programmierung, mehrere Methoden). Ein Skript wird in der Regel erst ausgeführt, wenn ein bestimmtes Ereignis eintritt, hier z.B. das Anklicken der Startflagge oder eines Objekts bzw. der Empfang einer Nachricht (→ ereignisorientierte Programmierung). Ausserdem wird ersichtlich, dass auch mehrere Skripte «gleichzeitig» ausgeführt werden können.


[[Bild:Opt_002.gif|center]]


{{Box|Reflexion|* Die Objekte sind durch ihre Eigenschaften (z.B. Aussehen, Grösse, Position, Lage) und die ihnen zugeordneten Aktionen (Skripte) charakterisiert . Dieses Programmier-Konzept heisst Objektorientierung.


{{Merke|:Licht breitet sich von einer Lichtquelle ausgehend nach allen Seiten aus, wenn es nicht behindert wird. Die Lichtteilchen (Photonen) bewegen sich dabei auf Geraden mit einer Geschwindigkeit von 300000 km/s. Durch Blenden kann man verschieden weite Lichtbündel herstellen. Die Form der Blende legt die Form des Lichtbündels fest. Sehr enge Lichtbündel nennt man Lichtstrahlen. Lichtstrahlen kann man als Photonenbahnen auffassen.
* Die zunächst unabhängigen Objekte können interagieren. Die häufigste Interaktion ist die Synchronisation (ein Objekt führt eine seiner Aktionen aus, wenn ein anderes Objekt eine bestimmte Aktion abgeschlossen hat). In Scratch erfolgt die Synchronisation über ausgetauschte Nachrichten (Prozesskommunikation).|Hervorhebung1
}}
}}


==Schatten==
<br />
 
====='''Remix'''=====


:→ ''[[Optik/Unterrichtsreihe Licht/Licht und Schatten|Licht und Schatten]]''


== Streuung und Reflexion ==
:Für den Remix eines eigenen Programmes fehlt auf der betreffenden Projektseite die Schaltfläche «Remixen». Das Vorgehen ist deshalb etwas anders als beim Remix eines «fremden» Programms. Das Youtube-Video «Scratch Tutorial: How to Remix your OWN Projects» ( https://youtu.be/dLY_MnAMe6o ) zeigt, wie es geht.


:→ ''[[Optik/Unterrichtsreihe Licht/Streuung und Reflexion|Streuung und Reflexion]]''
:Es ist vielleicht einen Versuch wert, die SuS das Programm einer anderen Schülerin oder eines anderen Schülers (einer anderen Gruppe) übernehmen zu lassen.


== Spiegelbild ==
<br />


:→ ''[[Optik/Unterrichtsreihe Licht/Spiegelbild|Spiegelbild]]''
====='''Bearbeitungs- und Ausführungsmodus'''=====


== Brechungsgesetz ==


:→ ''[[Optik/Unterrichtsreihe Licht/Brechungsgesetz|Brechungsgesetz]]''
:Die von den SuS programmierten Zündholzrätsel sind nur teilweise ausführbare Programme!


== Sammellinsen ==
:Die SuS haben immer im ''Bearbeitungsmodus'' programmiert. Sie konnten deshalb die Zundhölzer auf der Bühne beliebig verschieben und drehen (weil das eine Funktion der Scratch-Programmierumgebung ist).


:→ ''[[Optik/Unterrichtsreihe Licht/Sammellinsen|Sammellinsen]]''
:Wenn ein solches Projekt veröffentlicht und von einer anderen Person genutzt werden soll, fehlt bei jedem Zündholz das Skript, das dessen Verschieben mit der Maus ermöglicht!


== Bild und Bildentstehung ==
:Im Rahmen des Moduls Programmieren ist das kein Nachteil. Aber wenn die SuS ihre Programme veröffentlichen wollen, müssen sie die fehlenden Skripte unbedingt einfügen. In der Anleitung ist dieses ″Problem″ und dessen Lösung beschrieben.


:→ ''[[Optik/Unterrichtsreihe Licht/Bild und Bildentstehung|Bild und Bildentstehung]]''


== Abbildung beim Auge ==
{{Box|Reflexion|* Die starke und rasche Verbreitung von Computerprogrammen hängt auch damit zusammen, dass neue Programme auf bestehenden aufbauen können. Davon profitiert vor allem auch Open Source Software.


:→ ''[[Optik/Unterrichtsreihe Licht/Abbildung beim Auge|Abbildung beim Auge]]''
* Welche Vorteile hat Open Source Software aus Ihrer Sicht gegenüber nicht quelloffenen Programmen (z.B. LibreOffice gegenüber Microsoft Word)? Welche Nachteile sehen Sie?


==Weblinks==
* Könnten Sie sich vorstellen, an einem Open Source Projekt mitzuwirken (z.B. als Übersetzer/in, Programmierer/in)?|Hervorhebung1
}}


* [http://www.ptb.de/de/publikationen/massstaebe/mst03/mst03.html maßstäbe 3 - Zum Licht] von der [http://www.ptb.de Physikalisch Technischen Bundesanstalt]


* {{wbde|Einführung in die Astronomie: Astronomische Ereignisse|Tabelle}} zu Mondfinsternis und anderen Ereignissen
{{Box|Musterlösungen|* Zündholzrätsel Variante 1: https://scratch.mit.edu/projects/671648993
* Zündholzrätsel Variante 2: https://scratch.mit.edu/projects/671650074
* Zündholzrätsel Variante 3: https://scratch.mit.edu/projects/671651532|Lösung
}}


* [http://www.geogebra.org/de/upload/files/dynamische_arbeitsblaetter/lwolf/lochkamera/lochkamera.html Lochkamera - Abbildungsmaßstab] (C. Wolfseher)
=='''Diskussion (im ZUMpad)'''==
https://zumpad.zum.de/p/ProgrammierenITBO-Teil1


== Siehe auch ==
<iframe name="embed_readwrite" src="https://zumpad.zum.de/p/ProgrammierenITBO-Teil1?showControls=true&showChat=true&showLineNumbers=true&useMonospaceFont=false&toc=false" width="100%" height="600" frameborder="0"></iframe>
* [[Astronomie]]
* [[Optik]]
* [[Physik]]


__INDEXIEREN__
[[Kategorie:Informatik]]
[[Kategorie:Programmieren]]
{{DEFAULTSORT:Programmieren ITBO - Teilmodul 1}}


[[Kategorie:Optik|Licht]]
-->

Version vom 13. Oktober 2022, 15:13 Uhr


← zurück zur Startseite


Anleitung für die SuS im Open Document Format (ODF)


Handreichung für die Lehrperson

Ziele
  • Die SuS lernen die Programmierumgebung Scratch kennen und nutzen, um eigene Programmierprojekte zu eröffnen und zu verwalten.
  • Sie lernen grundlegende Elemente der Programmiersprache Scratch kennen und wenden sie an, um erste einfache Programme zu «schreiben».
  • Die SuS reflektieren die Erfahrungen, die sie beim Programmieren machen.
  • Sie lernen (ganz ohne theoretischen Ballast) auch grundlegende Konzepte «professioneller» Programmierung kennen (Objekt- und Ereignisorientierung, Prozesskommunikation).


Einführung

Die Vorkenntnisse der SuS an einer Fachmittelschule bezüglich des Moduls Programmieren werden sehr unterschiedlich sein und sich im Verlauf der kommenden Jahre weiter verändern. Je nach Situation in der Klasse muss die Lehrperson mehr führen oder mehr begleiten.
Günstig ist auf jeden Fall die Bildung von Zweiergruppen, um Diskussion und Reflexion zu fördern. Ist die Heterogenität in einer Klasse sehr gross, können vielleicht die Schülerinnen und Schüler mit Erfahrung im Programmieren die Begleitung von Gruppen übernehmen; eventuell können die Aufgaben des Teilmoduls 1 für die Schülerinnen und Schüler mit entsprechenden Vorkenntnissen offener formuliert werden (z.B. anstelle des vorgegebenen Zündholzrätsels ein selbst gestaltetes Memory oder Puzzle).


Die persönliche Programmierumgebung einrichten

Die SuS sollen auf scratch.mit.edu ein Konto anlegen (Scratcher werden / Join Scratch). Um das Anlegen des Kontos zu bestätigen, benötigen sie eine gültige E-Mail-Adresse. Noch nicht volljährige Schülerinnen und Schüler nutzen dafür idealerweise eine Mailadresse ohne Klarnamen oder weitere Angaben, die auf ihre Person zurückschliessen lassen. Volljährige SuS und insbesondere angehende Lehrpersonen sind freier in der Wahl ihrer E-Mail-Adresse. Auf jeden Fall sollten sie ein Lehrer-Benutzerkonto anlegen, damit sie später über alle Möglichkeiten verfügen (z.B. zur Weitergabe der Programme).
Es kann vorkommen, dass einzelne SuS das Anlegen eines Kontos aus persönlichen Gründen verweigern. Auch ohne ein Konto anzulegen, können sie das Modul «Programmieren» absolvieren. Sie müssen dazu ihre Scratch-Projekte jeweils auf ihren Rechnern lokal speichern und von dort wieder laden. Scratch speichert in diesem Fall während dem Arbeiten nicht automatisch!
Die SuS können Scratch bei Bedarf auch auf ihren persönlichen Geräten installieren (mit Ausnahme von mobilen Apple-Geräten, d.h. iPhone und iPad).


Scratch kennenlernen und ein erstes Programm selber machen


Das Beispielprogramm: ein Zündholzrätsel


Zündholzrätsel (Bildschirmaufnahme).png


Dem ersten Programm liegt die Idee zu Grunde, dass ein bestimmtes Problem gelöst werden kann, indem mit einem Programm auf dem Computer ein ausgewählter Teil der Wirklichkeit abgebildet wird (ein Modell gebildet wird). Im Fall unseres ersten Programms sind das Zündhölzer, die auf einer Fläche ausgelegt, verschoben und gedreht werden können.
Die Erläuterungen in der Anleitung zum Teil 1 des Moduls «Programmieren» sollen den SuS helfen, ein solches Programm mit Scratch Schritt für Schritt selber zu machen. Die Lehrperson beobachtet und hilft wenn nötig.


Die Komponenten der Programmierumgebung Scratch

Bühne: Die Sus sollen zunächst die Bühne und deren Gestaltungsmöglichkeiten kennenlernen.
Objekte (Figuren): In Scratch spielen die Figuren (Sprites) auf der Bühne Rollen. Die Figuren haben Eigenschaften (z.B. Grösse, Position), und Skripts beschreiben ihre (Re-) Aktionen (auf Ereignisse wie z.B. das Anklicken der Startflagge).
Aus theoretischer Sicht entspricht dieses Konzept der objekt- und ereignisorientierten Programmierung. Die Figuren sind die Objekte; die Objekte werden durch ihre Eigenschaften (Konstanten, Variablen) und (Re-) Aktionen (Methoden) charakterisiert. Die SuS sollen die Figuren aber ohne theoretischen Ballast als Objekte kennen lernen.
Objekte können in der Programmierumgebung dupliziert werden, dies vereinfacht das Erzeugen von mehreren gleichartigen Objekten.
Objekte können auch während des Programmablaufs dynamisch erzeugt werden. Der betreffende Befehl heisst «erzeuge Klon von ...». Im Modul Programmieren verwenden wir das dynamische Erzeugen (Klonen) von Objekten aber nicht.
→ Den SuS muss die Bilddatei Zündholz.svg als «Kostüm» für die Objekte des Zündholzrätsels zur Verfügung gestellt werden (z.B. auf einer gemeinsamen Ablage für das gesamte Modul).
Das Programm speichern, beschreiben und veröffentlichen: Diejenigen SuS, die ein Konto angelegt haben, können ihre Programme als Projekte speichern und bearbeiten. Dazu gehört eine Beschreibung des Programms für Nutzer:innen, die vor allem nötig ist, wenn das Programm veröffentlicht wird.
Die Programmbeschreibung soll auch aufzeigen, dass Programmieren nicht nur Kommunikation mit dem Computer, sondern auch Kommunikation mit Menschen (die das Programm nutzen oder weiterentwickeln) darstellt.


Reflexion
  • Das Zündholzrätsel ist nun bereits fertig. Sie können es anderen Personen zugänglich machen oder selbst nutzen, um das Zündholzrätsel zu lösen.
  • Im Mittelpunkt stehen die Objekte (in diesem Fall die Zündhölzer) mit ihren Eigenschaften (Aussehen, Grösse, Position, Lage). Dieses Programmier-Konzept heisst Objektorientierung. Allerdings agieren die Objekte in unserem Programm (noch) nicht.
  • Im Bearbeitungsmodus («Schau hinein») können Sie die Objekte auf der Bühne aber verschieben und drehen. Die dazu nötigen Befehle an den Computer haben die Programmierer:innen von Scratch realisiert.



Objekte und Aktionen
Bis zu diesem Zeitpunkt haben die SuS den Objekten erst Eigenschaften zugewiesen, aber noch keine Skripte (Aktionen).
Die Formulierung von Skripten wird anhand der für die Startaufstellung des Zündholzrätsels nötigen Initialisierung und einer Textausgabe eingeführt.
Die SuS müssen nun eigene Skripte «schreiben». Das entspricht wahrscheinlich dem, was sich die SuS unter «Programmieren» vorstellen. Es ist aber wichtig, dass sich die Schülerinnen und Schüler bewusst werden, dass auch die bisherigen Tätigkeiten (Objekte erzeugen, duplizieren, positionieren, usw.) und die dazu angestellten Überlegungen zum Programmieren gehören!
Um die Zündhölzer korrekt zu positionieren, müssen die SuS das Koordinatensystems der Bühne von Scratch kennen. Abbildung 11 in der Anleitung stellt dieses Koordinatensystem vor.
Die Textausgabe zur Erläuterung des Zündholzrätsels dient dazu, das Konzept der Erweiterungsblöcke von Scratch einzuführen. Die SuS benötigen den Block «Text zu Sprache».



Prozesskommunikation
Im nächsten Schritt lernen die SuS den Mechanismus des Nachrichtenaustauschs zwischen Objekten kennen. Der Nachrichtenaustausch ermöglicht hier vor allem die Synchronisation von Skripten (Prozesskommunikation).
Damit wird ersichtlich, dass Objekte in Scratch mehrere Skripte umfassen können (→ objektorientierte Programmierung, mehrere Methoden). Ein Skript wird in der Regel erst ausgeführt, wenn ein bestimmtes Ereignis eintritt, hier z.B. das Anklicken der Startflagge oder eines Objekts bzw. der Empfang einer Nachricht (→ ereignisorientierte Programmierung). Ausserdem wird ersichtlich, dass auch mehrere Skripte «gleichzeitig» ausgeführt werden können.


Reflexion
  • Die Objekte sind durch ihre Eigenschaften (z.B. Aussehen, Grösse, Position, Lage) und die ihnen zugeordneten Aktionen (Skripte) charakterisiert . Dieses Programmier-Konzept heisst Objektorientierung.
  • Die zunächst unabhängigen Objekte können interagieren. Die häufigste Interaktion ist die Synchronisation (ein Objekt führt eine seiner Aktionen aus, wenn ein anderes Objekt eine bestimmte Aktion abgeschlossen hat). In Scratch erfolgt die Synchronisation über ausgetauschte Nachrichten (Prozesskommunikation).


Remix
Für den Remix eines eigenen Programmes fehlt auf der betreffenden Projektseite die Schaltfläche «Remixen». Das Vorgehen ist deshalb etwas anders als beim Remix eines «fremden» Programms. Das Youtube-Video «Scratch Tutorial: How to Remix your OWN Projects» ( https://youtu.be/dLY_MnAMe6o ) zeigt, wie es geht.
Es ist vielleicht einen Versuch wert, die SuS das Programm einer anderen Schülerin oder eines anderen Schülers (einer anderen Gruppe) übernehmen zu lassen.


Bearbeitungs- und Ausführungsmodus
Die von den SuS programmierten Zündholzrätsel sind nur teilweise ausführbare Programme!
Die SuS haben immer im Bearbeitungsmodus programmiert. Sie konnten deshalb die Zundhölzer auf der Bühne beliebig verschieben und drehen (weil das eine Funktion der Scratch-Programmierumgebung ist).
Wenn ein solches Projekt veröffentlicht und von einer anderen Person genutzt werden soll, fehlt bei jedem Zündholz das Skript, das dessen Verschieben mit der Maus ermöglicht!
Im Rahmen des Moduls Programmieren ist das kein Nachteil. Aber wenn die SuS ihre Programme veröffentlichen wollen, müssen sie die fehlenden Skripte unbedingt einfügen. In der Anleitung ist dieses ″Problem″ und dessen Lösung beschrieben.


Reflexion
  • Die starke und rasche Verbreitung von Computerprogrammen hängt auch damit zusammen, dass neue Programme auf bestehenden aufbauen können. Davon profitiert vor allem auch Open Source Software.
  • Welche Vorteile hat Open Source Software aus Ihrer Sicht gegenüber nicht quelloffenen Programmen (z.B. LibreOffice gegenüber Microsoft Word)? Welche Nachteile sehen Sie?
  • Könnten Sie sich vorstellen, an einem Open Source Projekt mitzuwirken (z.B. als Übersetzer/in, Programmierer/in)?


Musterlösungen

Diskussion (im ZUMpad)

https://zumpad.zum.de/p/ProgrammierenITBO-Teil1


-->