Projekt:2021/Programmierprojekt: Unterschied zwischen den Versionen

(Die Seite wurde neu angelegt: „{{Projektseite |Projekt=Programmierprojekt Python |Kurs=Informatik 9 Diff |Schuljahr=2021/22 }} In den nächsten '''drei Wochen''' werdet ihr in Partnerarbeit…“)
 
 
(11 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 4: Zeile 4:
|Schuljahr=2021/22
|Schuljahr=2021/22
}}
}}
__TOC__


In den nächsten '''drei Wochen''' werdet ihr in Partnerarbeit individuelle Python-Projekte programmieren. Bei der Wahl des Projektes habt ihr viele Freiheiten. Auf dieser Seite findet ihr einige Vorschläge, die ihr direkt verwenden oder als Anregung zur Entwicklung eigener Ideen nutzen könnt.
In den nächsten '''drei Wochen''' werdet ihr in Partnerarbeit individuelle Python-Projekte programmieren. Bei der Wahl des Projektes habt ihr viele Freiheiten. Auf dieser Seite findet ihr einige Vorschläge, die ihr direkt verwenden oder als Anregung zur Entwicklung eigener Ideen nutzen könnt.
Zeile 20: Zeile 22:


== Mögliche Projekte ==
== Mögliche Projekte ==
* '''Turtle''': Eine [https://www.youtube.com/watch?v=UnGxMDIBcfc Animation oder ein Kunstwerk], ein [[wikipedia:Fraktal|Fraktal]] oder ein Generator für zufällige Bilder (zum Beispiel die Skyline einer Stadt). Auch einfache Spiele lassen sich mit der Turtle umsetzen.
* '''Turtle''': Eine [https://www.youtube.com/watch?v=UnGxMDIBcfc Animation oder ein Kunstwerk], ein [[wikipedia:Fraktal|Fraktal]] oder ein Generator für zufällige Bilder (zum Beispiel [https://pythonturtle.academy/city-skyline-with-python-turtle/ die Skyline einer Stadt]). Auch einfache Spiele lassen sich mit der Turtle umsetzen.
* '''GameGrid''': GameGrid eignet sich besonders für kleine Spiele. Wir haben uns bisher auf Spiele beschränkt, die in einem Gitter gespielt werden. Beispiele wären Schiffe versenken, Vier gewinnt oder Memory. Sudoku oder ähnliche Logikspiele lassen sich auch gut umsetzen.
* '''GameGrid''': GameGrid eignet sich besonders für kleine Spiele. Wir haben uns bisher auf Spiele beschränkt, die rundenbasiert in einem Gitter gespielt werden. Beispiele wären Schiffe versenken, Vier gewinnt oder Memory. Sudoku oder ähnliche Logikspiele lassen sich auch gut umsetzen. (Generell lassen sich viele Brett-/Gesellschaftsspiele gut umsetzen.)
* '''Micro:bit''': Mit dem Micro:bit lassen sich verschiedenste Projekte umsetzen. Die Interaktion von mehreren Bits bietet hier viele Möglichkeiten, ist aber von der Programmierung auch aufwendiger. Beispielsweise ein Programm, das Buchstaben in Morsecode oder Morsecode in Buchstaben umwandelt; eine Laufschrift, die sich über mehrere Bits hinweg bewegt.
* '''Micro:bit''': Mit dem Micro:bit lassen sich verschiedenste Projekte umsetzen. Die Interaktion von mehreren Bits bietet hier viele Möglichkeiten, ist aber von der Programmierung auch aufwendiger. Beispielsweise ein Programm, das Buchstaben in Morsecode oder Morsecode in Buchstaben umwandelt; eine Laufschrift, die sich über mehrere Micro:bits hinweg bewegt.


Weitere kleine Projektideen finden sich auf [http://jython.tobiaskohn.ch/students-de.html der Seite von Tobias Kohn].
Weitere kleine Projektideen finden sich auf [http://jython.tobiaskohn.ch/students-de.html der Seite von Tobias Kohn] oder im [https://pythonturtle.academy/category/difficulty-level-4/ Blog der Python-Academy].


== Mindestanforderungen ==
== Mindestanforderungen ==
Zeile 32: Zeile 34:


Zu jedem Projekt gehört außerdem eine '''Bedienungsanleitung''', die die Projektidee und das finale Produkt beschreibt und genau erklärt, wie es gestartet und ggf. gesteuert wird. Dies kann als bebildertes PDF-Dokument oder als kleines Video umgesetzt werden.
Zu jedem Projekt gehört außerdem eine '''Bedienungsanleitung''', die die Projektidee und das finale Produkt beschreibt und genau erklärt, wie es gestartet und ggf. gesteuert wird. Dies kann als bebildertes PDF-Dokument oder als kleines Video umgesetzt werden.
=== Inhalt der Bedienungsanleitung ===
Die schriftliche Abgabe zum Projekt nimmt einen '''wesentlichen Teil''' der Bewertung ein. Die Gestaltung ist  eigenständig zu erledigen und sollte an euer Projekt angepasst werden. Das bedeutet einige Aspekte sind in eurer Anleitung ggf. unwichtiger und andere wichtiger. Teil der Aufgabe ist es, ein '''sinnvolles schriftliches Begleitdokument''' zu erarbeiten.
Folgende Aspekte sollten im Dokument berührt werden:
# Einleitung
# Beschreibung der Projektidee
# Beschreibung des Produktes (was wurde umgesetzt, was wurde ggf. nicht geschafft, wo lagen Probleme)
# Bedienungsanleitung des Produktes
#* Wie wird das Programm gestartet?
#* Wie wird es ggf. gesteuert?
#* Wo könnten Probleme / Fehler auftreten? Was macht man dann?
#* ggf. Spielregeln erläutern (bei Spielen).


== Bewertungskriterien ==
== Bewertungskriterien ==
Zeile 41: Zeile 58:
! Die Projektgruppe … !! Mögliche Punkte
! Die Projektgruppe … !! Mögliche Punkte
|-
|-
! colspan="2" | PLANUNG (13%)
! colspan="2" | PLANUNG (5%)
|-
|-
| … plant den Umfang des Projektes passend zur Entwicklungszeit. ||style="text-align:center"| 4
| … plant den Umfang des Projektes passend zur Entwicklungszeit. ||style="text-align:center"| 4
|-
|-
! colspan="2" | PROGRAMM (29%)
! colspan="2" | PROGRAMM (46%)
|-
|-
| … entwickelt ein fehlerfrei erlebbares Produkt. ||style="text-align:center"| 10
| … entwickelt ein fehlerfrei erlebbares Produkt. ||style="text-align:center"| 10
Zeile 57: Zeile 74:
| … dokumentiert und formatiert den Programmcode vollständig und gut lesbar. ||style="text-align:center"| 6
| … dokumentiert und formatiert den Programmcode vollständig und gut lesbar. ||style="text-align:center"| 6
|-
|-
! colspan="2" | ARBEITSWEISE (20%)
! colspan="2" | ARBEITSWEISE (29%)
|-
|-
| … arbeitet konzentriert am Projekt und nutzt die Arbeitszeit im Unterricht effektiv. ||style="text-align:center"| 6
| … arbeitet konzentriert am Projekt und nutzt die Arbeitszeit im Unterricht effektiv. ||style="text-align:center"| 6
Zeile 67: Zeile 84:
| … hält sich an die Vorgaben und Absprachen zur Projektarbeit. ||style="text-align:center"| 6
| … hält sich an die Vorgaben und Absprachen zur Projektarbeit. ||style="text-align:center"| 6
|-
|-
! colspan="2" | BEDIENUNGSANLEITUNG (22%)
! colspan="2" | BEDIENUNGSANLEITUNG (20%)
|-
|-
| … verfasst die Bedienungsanleitung in fehlerfreier deutscher Sprache. ||style="text-align:center"| 4
| … verfasst die Bedienungsanleitung in fehlerfreier deutscher Sprache. ||style="text-align:center"| 4
Zeile 77: Zeile 94:
| … unterstützt die Erläuterungen durch geeignete Grafiken (z.B. Diagramme, Bildschirmfotos). ||style="text-align:center"| 4
| … unterstützt die Erläuterungen durch geeignete Grafiken (z.B. Diagramme, Bildschirmfotos). ||style="text-align:center"| 4
|-  
|-  
!style="text-align:right"| Punkte insgesamt: || 100
!style="text-align:right"| Punkte insgesamt: || 70
|}
|}
== Hilfestellungen ==
=== Python Turtle ===
* [https://programmierkonzepte.ch/engl/index.php?inhalt_links=navigation.inc.php&inhalt_mitte=turtle/turtle.inc.php Tutorial zur Python Turtle]
* [https://programmierkonzepte.ch/engl/index.php?inhalt_links=navigation.inc.php&inhalt_mitte=turtle/turtledoc.html Dokumentation der verfügbaren Funktionen]
=== GameGrid ===
* [https://programmierkonzepte.ch/engl/index.php?inhalt_links=navigation.inc.php&inhalt_mitte=gamegrid/gamegrid.inc.php Tutorial zum GameGrid]
* [https://programmierkonzepte.ch/engl/index.php?inhalt_links=navigation.inc.php&inhalt_mitte=gamegrid/gamegriddoc.html Dokumentation der verfügbaren Funktionen]
{{Hinweis|Immer, wenn von <code>pixel coordinates</code> die Rede ist, wird ein <code>Point</code> verlangt. Im Vergleich zu <code>Location</code> bezeichnet ein <code>Point</code> nicht die Zelle und Spalte einer GameGrid Zelle, sondern die x- und y-Koordinate eines Pixels:
<code>bg.drawCircle(Point(100,140), 10)</code>}}
=== micro:bit ===
* [[Lernpfad:Einführung in den micro:bit]]
* [[Lernpfad:Das micro:glow]]
* [https://microbit-micropython.readthedocs.io/en/latest/tutorials/images.html Dokumentation der verfügbaren Funktionen]
8.581

Bearbeitungen