Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
talit:tutorial_oop [2020-09-02 13:33] – [Aufgabe 6 (voci_trainer_v04)] spstalit:tutorial_oop [2020-11-30 13:57] (aktuell) – [Vererbung] sps
Zeile 25: Zeile 25:
 1. Du kannst gerne bereits mit den Schritten beschrieben in [In Lektion](#In_Lektion) und in [Auftrag nach erster Lektion](#Auftrag_nach_erster_Lektion). 1. Du kannst gerne bereits mit den Schritten beschrieben in [In Lektion](#In_Lektion) und in [Auftrag nach erster Lektion](#Auftrag_nach_erster_Lektion).
  
-### In Lektion {#In_Lektion}+### In Lektion
  
 1. Erstelle auf GitHub ein neues Repository: 1. Erstelle auf GitHub ein neues Repository:
Zeile 44: Zeile 44:
 7. Füge *anschae* als Collaborator dieses Repos hinzu. 7. Füge *anschae* als Collaborator dieses Repos hinzu.
  
-### Auftrag nach erster Lektion {#Auftrag_nach_erster_Lektion}+### Auftrag nach erster Lektion
  
 Studiere im Tutorial **Python Setup** die folgenden Kapitel. Die Schritte, die du explizit machen sollst, werden explizit genannt: Studiere im Tutorial **Python Setup** die folgenden Kapitel. Die Schritte, die du explizit machen sollst, werden explizit genannt:
Zeile 194: Zeile 194:
   * JSON   * JSON
   * (XML)   * (XML)
-Bildet Gruppen (ca. 3 SuS) und arbeitet euch in eines der beiden Datenformate (CSV oder JSON) ein.+Bildet Gruppen (je 2 SuS) und arbeitet euch in eines der beiden Datenformate (CSV oder JSON) ein.
  
 **Auftrag:** **Auftrag:**
Zeile 204: Zeile 204:
   - Findet eine Website, auf der man Dateien eures Formats auf Gültigkeit prüfen kann.   - Findet eine Website, auf der man Dateien eures Formats auf Gültigkeit prüfen kann.
   - Ladet euer Tutorial auf dieses DokuWiki in eurem [[talit_2018_2022:start|SuS Arbeitsbereich]]   - Ladet euer Tutorial auf dieses DokuWiki in eurem [[talit_2018_2022:start|SuS Arbeitsbereich]]
-  - **Erste (aber trotzdem gute) Version: Sonntag 24.11.2019** +  - **Erste (aber trotzdem gute) Version: Sonntag 20.09.2019** 
-  - **Deadline: Montag 25.11.2019**+  - **Deadline: Montag 21.09.2019**
  
 Ein Codeblock im DokuWiki Editor wird wie folgt geschrieben: Ein Codeblock im DokuWiki Editor wird wie folgt geschrieben:
Zeile 284: Zeile 284:
 *Tipp:* Mache Kopien von deinen Voci-Listen, falls diese falsch oder leer überschrieben werden. *Tipp:* Mache Kopien von deinen Voci-Listen, falls diese falsch oder leer überschrieben werden.
  
-## Aufgabe 7 (Console Game)+## Vorbereitung Console Game
  
-**Auftrag:** Als kleine Abschlussarbeit für dieses Semester sollt ihr ein Konsolen Game alleine oder in 2er Gruppen programmieren. Überlege dir auf nächste Woche (a) mit wem du arbeiten möchtest (oder alleine) und (b) was für ein Game es sein soll.+**Auftrag:** Als kleine Abschlussarbeit für dieses Semester (nach dem Voci-Programm) sollt ihr ein Konsolen Game alleine oder in 2er Gruppen programmieren. Überlege dir auf nächste Woche (a) mit wem du arbeiten möchtest (oder alleine) und (b) was für ein Game es sein soll.
  
 Die Bedingungen an das Game sind: Die Bedingungen an das Game sind:
  
    * Spielt in Konsole.    * Spielt in Konsole.
-   * Ihr dürft ein bereits bekanntes Spiel implementieren. Ihr könnt aber auch ein eigenes erfinden oder ein bestehende abändern/erweitern.+   * Ihr dürft ein bereits bekanntes Spiel implementieren. Ihr könnt aber auch ein eigenes erfinden oder ein bestehendes abändern/erweitern.
    * Gibt nach erfolgreichem Spielen einen Score zurück: absolviertes Level und Anzahl Punkte (z.B. gesammelte Punkte, Spieldauer in Sekunden, Anzahl Versuche, ...)    * Gibt nach erfolgreichem Spielen einen Score zurück: absolviertes Level und Anzahl Punkte (z.B. gesammelte Punkte, Spieldauer in Sekunden, Anzahl Versuche, ...)
    * Es ist auch möglich (und sogar wünschenswert), verschiedene Levels zu haben. Das Ziel wäre dann, ein möglichst hohes Level mit einem möglichst guten Score zu erzielen.    * Es ist auch möglich (und sogar wünschenswert), verschiedene Levels zu haben. Das Ziel wäre dann, ein möglichst hohes Level mit einem möglichst guten Score zu erzielen.
Zeile 364: Zeile 364:
 Ein wichtiges Konzept der OOP ist die **Vererbung**. Ein wichtiges Konzept der OOP ist die **Vererbung**.
  
-Machen wir ein Beispiel: In unserem Code haben wir eine Klasse //Voci//. Für jeder Datenfile, welches eine Wörtliliste enthält, erstellen wir ein //Voci//-Objekt. Nachdem wir die Wörtli gelern haben, wollen wir den Inhalt des //Voci//-Objekts zurück in die Datei schreiben. Es macht also Sinn, wenn die //Voci//-Klasse zwei Methoden //read\_file// und //save\_file// hat. Die Klasse könnte dann so aussehen:+Machen wir ein Beispiel: In unserem Code haben wir eine Klasse //Voci//. Für jedes Datenfile, welches eine Wörtliliste enthält, erstellen wir ein //Voci//-Objekt. Nachdem wir die Wörtli gelernt haben, wollen wir den Inhalt des //Voci//-Objekts zurück in die Datei schreiben. Es macht also Sinn, wenn die //Voci//-Klasse zwei Methoden //read\_file// und //save\_file// hat. Die Klasse könnte dann so aussehen:
  
 <code python> <code python>
Zeile 432: Zeile 432:
 Schreibe deinen Code möglichst objektorientiert um. Schreibe deinen Code möglichst objektorientiert um.
  
-//Tipp:// Kopiere deinen bestehenden Code nur in kleinen Päckchen in die neue Game-Struktur. Stelle immer sicher, dass der Code keine Fehler beinhaltet, bevor du dich um weiteren Code kümmerst.+//Tipp:// Kopiere deinen bestehenden Code nur in kleinen Päckchen in die neue Struktur. Stelle immer sicher, dass der Code keine Fehler beinhaltet, bevor du dich um weiteren Code kümmerst.
  
 ## Aufgabe 8 ## Aufgabe 8
  • talit/tutorial_oop.1599053588.txt.gz
  • Zuletzt geändert: 2020-09-02 13:33
  • von sps