ProgrammierenITBO-Teilmodul-2 und Benutzer:Porenta: Unterschied zwischen den Seiten

Aus ZUM-Unterrichten
(Unterschied zwischen Seiten)
KKeine Bearbeitungszusammenfassung
Markierung: 2017-Quelltext-Bearbeitung
 
Keine Bearbeitungszusammenfassung
 
Zeile 1: Zeile 1:
<!--  
<div class="grid">
<div class="width-1-2">


Kommentar
Salvē viātor!


-->
<span class="brainy hdg-art fa-3x"></span>quid dē mē? magister et linguae Latīnae et linguae Germānae sīve Theodiscae sum, doceō [https://www.khg.net/ in lyceō nōmine Kurt Huber] in Gräfelfing sitō et - ut iam legere potes - linguam Latīnam ita amō ut mihi cordī sit eam quam fluentissimē loquī posse. satis prōvectus sum sed multa etiam mihi discenda. Satius autem est iam paullulum prōfectum esse quam nōndum coepisse. libenter vetera misceō cum novīs, ūtilia cum fēstīvīs, cum sēriīs dicācia. didactica dicāx ut ita dīcam.


=='''Anleitung für die SuS im Open Document Format (ODF)'''==
Itaque etiam pelliculās faciō et apud Tūtubum (vel Anglicē "Youtube") in canālī [https://www.youtube.com/c/OTIAMEA/ "Ōtia mea"] dīvulgō et eīs quibus lingua Latīna discenda est et eīs quī suā sponte Latīnae operam dant. Illīs Germānicē, hīs Latīnē loquor.
{{Box|Download|[[Datei:ProgrammierenTeil2StudentEditionV4.odt|mini]]|Download
}}


Cūra, ut valeās!
</div>
<div class="width-1-2">
{{Navigation verstecken|
Wenn Du verstehst, was da lateinisch steht, brauche ich ja nichts mehr übersetzen. Wenn nicht, schau auf meinen Youtube-Kanal [https://www.youtube.com/c/OTIAMEA/ Otia Mea] vorbei, da erfährst Du alles, was Du brauchst. ;)
|Übersetzung|Seiten verstecken}}
</div>
</div>


=='''Handreichung für die Lehrperson'''==
==Eigene Seiten==
{{Box|Download|[[[[Datei:ProgrammierenTeil2TeacherEditionV4.odt|mini]]|Download
}}


{{Box|Ziele|* Die SuS machen sich weiter mit Scratch vertraut.
*[[Benutzer:Porenta/Test]]
 
*[[Benutzer:Porenta/Hexameter skandieren]]
* Sie lernen die «Grundbausteine» von Programmen kennen und anwenden (Sequenz, Wiederholung, bedingte Ausführung, Variable).
*[[Benutzer:Porenta/Wortfeld Natur]]
 
*[[Benutzer:Porenta/Mittelalter\Iwein und moderne Heldenfiguren]]
* Die SuS verstehen das Konzept der Turtle-Grafik für das entdeckende Lernen im Primarschul-Unterricht.
*[[Benutzer:Porenta/Expressionismus Menschheitsdämmerung]]
 
*[[Benutzer:Porenta/Expressionismus Metropolis]]
* Sie setzen sich mit dem Programmieren von Turtle-Grafiken anhand eines konkreten Beispiels auseinander.|Kurzinfo
}}
 
 
==='''Einführung'''===
 
:Die FMS-SuS kennen aus Teil 1 des Moduls «Programmieren» das Programmieren als Prozess zur Formulierung und Umsetzung von computergestützten Problemlösungen. Sie sind mit grundlegenden Konzepten des Programmierens (methodisches Vorgehen, Objekt- und Ereignisorientierung, Prozesskommunikation) vertraut.
 
:Das Beispiel, an dem die SuS im Teil 2 des Moduls «Programmieren» arbeiten werden, ist eine potenzielle Unterrichtssequenz in der Primarschule (gemäss Schweizer Lehrplan 21 etwa Ende 4. Klasse). Es hat zwei Schwerpunkte.
 
:Das Konzept der ''Turtle-Grafik'' von Seymour Papert bildet den einen Schwerpunkt. Den anderen Schwerpunkt bildet das Kennenlernen und Anwenden der «Grundbausteine» von Programmen (Sequenz, Wiederholung, bedingte Ausführung, Variable).
 
:Programmieren für Kinder in der Primarschule kann anders gestaltet werden als ein Programmierunterricht im Gymnasium. Mit Turtle-Grafiken können die Primarschulkinder experimentieren und auf dem Bildschirm sofort sehen, ob sie mit ihren Überlegungen richtig liegen. Andernfalls passen sie ihr «Programm» an und beobachten und reflektieren die bewirkten Änderungen. Die SuS sollen [https://de.wikipedia.org/wiki/Seymour_Papert die Idee der Turtle-Grafiken von Seymour Papert] kennenlernen, um später als Lehrpersonen in der Primarschule das Programmieren als sinnvolles Werkzeug für entdeckendes Lernen zu nutzen.
 
:Die Einführung bietet auch einen ersten Einblick in das Konzept der Turtle-Grafiken.
 
<br />
 
==='''Beispiel einer möglichen Unterrichtssequenz mit Turtle-Grafik'''===
 
:Die SuS der FMS sollen annehmen, dass sie im Primarschulunterricht das Thema «regelmässige Vielecke» behandeln müssten und den Primarschüler:innen eine Aufgabe zum entdeckenden Lernen mit Turtle-Grafik in Scratch stellen sollten.
 
:Die SuS können dazu auf die Vorlage für die Aufgabe zugreifen: https://scratch.mit.edu/projects/698418539
 
:Danach sollen sich die angehenden Lehrpersonen in die Schülerrolle versetzen und die Turtle-Grafik selbst programmieren.
 
:Die Anleitung ist so gestaltet, wie sie im Unterricht in der Primarschule den Schüler:innen abgegeben werden könnte. Zwei fiktive Schüler:innen, Alice und Bob, geben die nötigen Erklärungen in Dialogform ab.
 
<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
}}
 
 
 
 
====='''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.
 
 
{{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.
 
* 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
}}
 
<br />
 
====='''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.
 
<br />
 
====='''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.
 
 
{{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.
 
* 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)?|Hervorhebung1
}}
 
{{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
}}
 
=='''Diskussion (im ZUMpad)'''==
https://zumpad.zum.de/p/ProgrammierenITBO-Teil1
 
<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>
 
__INDEXIEREN__

Version vom 6. Oktober 2022, 12:39 Uhr

Salvē viātor!

quid dē mē? magister et linguae Latīnae et linguae Germānae sīve Theodiscae sum, doceō in lyceō nōmine Kurt Huber in Gräfelfing sitō et - ut iam legere potes - linguam Latīnam ita amō ut mihi cordī sit eam quam fluentissimē loquī posse. satis prōvectus sum sed multa etiam mihi discenda. Satius autem est iam paullulum prōfectum esse quam nōndum coepisse. libenter vetera misceō cum novīs, ūtilia cum fēstīvīs, cum sēriīs dicācia. didactica dicāx ut ita dīcam.

Itaque etiam pelliculās faciō et apud Tūtubum (vel Anglicē "Youtube") in canālī "Ōtia mea" dīvulgō et eīs quibus lingua Latīna discenda est et eīs quī suā sponte Latīnae operam dant. Illīs Germānicē, hīs Latīnē loquor.

Cūra, ut valeās!

Eigene Seiten