Seite anzeigenÄltere VersionenLinks hierherCopy this pageFold/unfold allNach oben Diese Seite ist nicht editierbar. Du kannst den Quelltext sehen, jedoch nicht verändern. Kontaktiere den Administrator, wenn du glaubst, dass hier ein Fehler vorliegt. ====== Planung FS 2023 ====== ++++Planung Q1| * **15.02.2023:** * 1M & 2M: * Vorstellung [[talit:microbit:security|Security-Projekt]] * Gruppenbildung * 2M stellen 1M micro:bit vor * gemeinsam einfache Aufgaben lösen * 2M: Besprechung Projekte * **22.02.2023:** * 1M & 2M: Start [[talit:microbit:security|Security-Projekt]] (I) * 2M: Vorstellung Projekte Teil I * Leonardo Brun (Discord) * Laurin Herzig (Pygame) * **01.03.2023:** * 1M & 2M: [[talit:microbit:security|Security-Projekt]] (II) * 2M: Vorstellung Projekte Teil II * Dario Küng (Verkehrskadetten-Bestellung) * Enny & Livia (Game) * (Jona & Dimitri (Tasks App)) * **08.03.2023:** * Vorbereitung Hackathon * https://github.com/tkilla77/ksr_talit_hackathon * 2M: Vorstellung Projekte Teil III * Jonas Tibisch (Chess Project) * Hanna Kradolfer (Pygame) * 1M & 2M: [[talit:microbit:security|Security-Projekt]] (III) * **15.03.2023:** * 2M: Vorstellung Projekte Teil IV * Lukas Tran * Vorbereitung Hackathon * 1M & 2M: [[talit:microbit:security|Security-Projekt]] (IV) * **HACKATHON** 18.03.2023 (Obligatorisch für 2M, freiwillig 1M) * [[https://hackathon-thurgau.ch/jugend-challenge/|Hackathon Jugendchallenge]] * **22.03.2023:** * Projekte finalisieren * **Deadline** Abgabe Videodokumentation/Werbevideo bis **Fr. 24.03.2023 @23.59** ++++ **Planung Q2:** * 1M: siehe [[microbit_asteroids_game_2023#programm_1m_fs2023_q2]] === Programm 1M === ++++Programm 1M| === Lektion 10: 28.06.2023 === * Letzte Lektion vor Ferien, nur ca. 1h * Info zu SSW (Neuronale Netze) * Fragen zu Bildbearbeitung und Asteroiden Game * **HA: bis Ende 1. Ferienwoche Asteroiden-Game fix fertig (Model, m:bit, PyQt, Console)** === Lektion 9: 21.06.2023 === * Abschiedsapéro 4M-TALIT * Bildberarbeitung: * Demo Bildbearbeitungseffekte mit Numpy * 2/3-er Gruppen wird je ein Effekt zugewiesen, überlegen, wie umsetzen * mind. zwei versch. Effekte programmieren * **HA:** Auftrag fertig === Lektion 8: 14.06.2023 === * neues Thema: [[talit:image_processing_python|Pixel Art und Bildbearbeitung mit Python]] * Vorbereitung auf NN Kurs in SSW * it's Fun! * Lektion: * Aufgabe 0: Einrichten (gemeinsam) * Aufgabe 1: Numpy Arrays kennen lernen * Aufgabe 2: Fun with Flags * Aufgabe 3: Pixel Art * Aufgabe 4: Animation (optional) * **HA:** * auf SO: Code zu A3 fertig und abgeben per Teams (wie immer) * auf MI: eigene Pixel Art, in Klasse demonstrieren === Lektion 7: 07.06.2023 === * Auftrag von vorletzter Woche (Finale Version Asteroids Game) * **FINALE ABGABE:** kommender Sonntag 11.06.2023 === Lektion 6: 31.05.2023 === Weiter an Auftrag von letzter Lektion === Lektion 5: 24.05.2023 === * Slides: Model / View * Auftrag: Version Final * **Abgabe 1:** Teil I & II (oder mehr) bis nächste Lektion, Besprechung in Person. * **Abgabe 2:** Verbesserung & Teil III & IV bis So 4.6. === Lektion 4: 10.05.2023 === * Rückmeldung HA: * Erreichbarkeit: Mitteilungen meist per Teams, muss *täglich* überprüfen * wird besser * bitte mit aussagekräftiger Rückmeldung. Probleme oder Fehler? Beschreibe diese und nicht einfach "... dann wird mir eine Fehlermeldung bei Linie 30 angegeben." * GitHub: NIE Files per Upload hochladen sondern über Git-Bash. Finde heraus wie das geht, frage TALIT-Go(e)tti! * OOP: * Grundidee * Beispiele von SuS * Live-Demo: Asteroiden-Regen * HA: * v05 korrigieren & erweitern * beachte: Aufgabe wurde ergänzt: * z.B. Klasse für Player * **Abgabe 1:** bis kommenden Sonntag 14.5. (besser früher) * dann warten auf Rückmeldung von LP * **Abgabe 2:** Verbesserung (falls nötig bis So. 21.5. * **Ziel: perfekte OOP Version bis zur nächsten Lektion** **Code-Beispiele SuS:** Wo ist das Problem? <code python> class Asteroid: def __init__(self, pos_x, pos_y, brightness, speed, last_update): self.pos_x = pos_x self.pos_y = pos_y self.brightness = brightness self.speed = speed self.last_update = last_update def spawn(self): if len(Asteroids) < MAX_ASTEROIDS: pos_x = random.randint(0, 4) pos_y = 0 brightness = ASTEROID_BRIGHTNESS speed = random.randint(50, 500) last_update = time.ticks_ms() asteroid = Asteroid(pos_x, pos_y, brightness, speed, last_update) Asteroids.append(asteroid) return asteroid return None </code> === Lektion 3: 03.05.2023 === * Rückmeldung HA: * In Code unten keine Werte (ausser z.B. 0), sondern KONSTANTEN * Keep it short & simple: * anstelle `if <condition1>: if <condition2>` einfach: `if <condition1> and <condition2>` * vermeide zu viele Einrückungen -> schwierig zu lesen * Logische Abfolge in Game-Loop: Halte dich an Vorgaben in Template: * Template: Update Asteroid & Player / Collision / Display / Short Sleep * Bsp. nicht optimal: Display / Update Asteroid & Player / Collision / Short sleep * Neustart bei Game Over: Mehrere Möglichkeiten: * Nach Game Over in neues `while True`, mit break ausbrechen (Lösung v04a). Problem: Wie auf Starteinstellungen zurücksetzen, ohne den Code copy-pasten? Möglichkeit: global variables, aber ist bad practice * Alternative: Zwei eigene Funktionen für Game Loop und Game Over (v04b). * Besprechung: Wollen mehrere Asteroiden gleichzeitig haben, sollen zufällig spawnen. Wie programmieren? * Theorie Input und Aufgaben (keine Zeit mehr für Aufgaben) zu [[talit:oop_einfuehrung#auftrag_2oop_im_game|OOP]] * Version 5 programmieren * **HA:** * v05 fertig und abgeben bis So. * optional aber sehr empfohlen: [[talit:oop_einfuehrung#auftrag_1klasse_person|Auftrag 1]] === Lektion 2: 26.04.2023 === * **Rückmeldung Abgaben** von HA: * waren nicht gut im Allgemeinen, müssen immer gleich ablaufen * Lektion verpasst? SELBSTÄNDIG nacharbeiten, nachfragen, ... * z.T. HEX-File oder File ohne Endung anstelle PY-File hochgeladen. Python-Files immer von Form `my_file.py` * vor Abgabe **überprüfen**, ob Hochladen auf GitHub funktioniert hat! * z.T. (fast) identische Abgaben. Warum??? * **Nachricht** an LP per Teams mit folgender Info: * **Link** zum File (jedes Mal aufs Neue, damit LP nicht lange suchen muss) * **Rückmeldung:** Funktioniert? Falls nicht, beschreibe Probleme, Bugs, ... so genau es geht\\ \\ * **Rückmeldungen Code:** * [[talit:python_setup#programmier-konventionen| Programmierkonventionen]] * falls `game_over` bool (True oder False), schreibe `if game_over` anstelle `if game_over == True` * Kommentare: Überschriften, Erklärungen * Strukturierung Code (siehe Template zu nächster Code-Version) * Trenne Logik von Anzeige (mehr dazu im Auftrag zu v03) * Verwende **kein sleep()** für Bewegung der Asteroiden (beeinflusst auch Player) sondern `time.ticks_ms()`\\ \\ * **Auftrag Lektion:** * **Version 3** (gleiches Game aber sauber strukturiert) * Lösung muss mit **LP besprochen** werden * **HA 1:** Studiere [[talit:talit_info|TALIT-Info]] * **HA 2: Version 4** * Abgabe bis SA-Abend * Halte dich an Abgaberegeln (gelten immer!): * Nachricht an sca per Teams mit: * **Link** zum File (jedes Mal aufs Neue, damit LP nicht lange suchen muss) * **Rückmeldung:** Funktioniert? Falls nicht, beschreibe Probleme, Bugs, ... so genau es geht\\ \\ === Lektion 1: 19.04.2023 === * **Version 1** (Challenge, Asteroids v01) * Besprechung: Wie kann man verbessern? Siehe Tipps * Auftrag 2 beginnen * **Hausaufgabe:** * Bis Sonntagabend **Version 2** fertig ... * auf GitHub (geteilt mit anschae, gehe auf GitHub und stelle sicher, dass alles geklappt hat) ... * und Nachricht per Teams an sca mit: * Link zu GitHub Repo * kurze Nachricht: Was funktioniert? Gibt noch Probleme? ++++ ==== Gruppen ==== ++++Gruppen| ^ Name ^ Klasse | Team | | Kim Ngo (1Mdz, KK) | 1 | 1 | | Enny Reinhardt (2Mdz) | 2 | 1 | | Rico Fleming (1Ma) | 1 | 2 | | Jona Kreis (2Mc) | 2 | 2 | | Maia Cater (1Fa, KC) | 1 | 3 | | Livia Scherle (2Mez) | 2 | 3 | | Jennifer Imonopi (1Mez, KC) | 1 | 4 | | Lea Seitter (1Mb, KC) | 1 | 4 | | Hanna Kradolfer (2Mdz) | 2 | 4 | | Lorenzo Camani (1Mfz) | 1 | 5 | | Mirea Capizzi (1Ma) | 1 | 5 | | Dario Küng (2Mdz) | 2 | 5 | | Bernardo Bürger Brun (1Mfz, KC) | 1 | 6 | | Jonas Tibisch (2Mdz, KK) | 2 | 6 | | Mailo Rodriguez (1Mc) | 1 | 7 | | Dimitri Horn (2Mc) | 2 | 7 | | Johannes Stölzle (1Mfz) | 1 | 8 | | Darvin Subramaniam (1Mdz) | 1 | 8 | | Laurin Herzig (2Mez, KK) | 2 | 8 | | Andrin Schmid (1Mez) | 1 | 9 | | Lukas Tran (3Ma) | 3 | 9 | | Dylan Cetina (1Mfz) | 1 | 10 | | Joris Cremonese (1Ma) | 1 | 10 | | Leonardo Brun (2Mez) | 2 | 10 | ++++ talit/planung_fs_2023.txt Zuletzt geändert: 2024-08-08 11:11von sca