Themenübersicht (Ablauf nach Tagen)

Die folgende Übersicht ist nicht endgültig und wird eventuell im Verlauf des Repetitoriums noch aktualisiert. Es kann sein, dass wir bestimmte Themen vorziehen oder erst später behandeln. Die Einteilung nach Themen ist sowieso nicht ganz einfach, da z. B. die meisten Sortier-/Suchalgorithmen rekursiv sind (und somit auch zu Rekursion gezählt werden könnten). Ich werde versuchen, die Einteilung im Wesentlichen einzuhalten, sodass ihr einen groben Orientierungspunkt habt.

Der Ablauf ist an meinem Übungsskript orientiert, wobei wir den Großteil dieserAufgaben bearbeiten werden und ich andenke, die Klausuraufgaben dann als eine Art Generalprobe am Ende zu machen.


  1. Grundlagen der Programmierung – 07.03.18
    1. Grundlegende Begrifflichkeiten (enthält Objektorientierung)
    2. Primitive Datentypen & Typecasting
    3. Exkurs: Zahlensysteme
    4. Operatoren, Ausdrücke & Auswertungsbäume
    5. Kontrollstrukturen (if, while, for) & Programmverständnis
    6. Referenzdatentypen (Arrays, String, ...) & kleinere Programmieraufgaben

  2. Syntax 08.03.18
    1. Kontextfreie Grammatiken & reguläre Ausdrücke
    2. Syntaxbäume
    3. Kontrollflussdiagramme

  3. Rekursion 09.03.18
    1. Iteration vs. Rekursion
    2. Endrekursion
    3. Mehr Rekursion

  4. Objektorientierte Programmierung 12.03.18
    1. Grundlagen der Objektorientierung
      • Klasse, Objekte, Membervariablen, Konstruktoren, statische/dynamische Methoden, Sichtbarkeiten
      • Schlüsselwörter super und this
      • Verschattung von Objektvariablen
      • Call-by-Value und Call-by-Reference
      • Vererbung, Klasse Object
      • Überladen und Überschreiben von Objektmethoden/Konstruktoren
      • Abstrakte Klassen und Interfaces
      • Schlüsselwort final
    2. Generische Klassen (Generics / Typparameter)
    3. Objektorientierte Programmieraufgaben
    4. Collections (insb. Listen) und Iteratoren

  5. Polymorphie (17.) 13.03.18
    • Statischer und dynamischer Typ
    • Casting
    • Bestimmung der aufgerufenen Methode

  6. Sortier- und Suchalgorithmen (18.) – 14.03.18
    • (16.) Collections (insb. Listen) und Iteratoren (verschoben; geplant)
    • Insertionsort
    • Mergesort
    • Binäre Suche
    • ... und was die Klausuren zu bieten haben ...

  7. Threads (19.) – 15.03.18
    • Theorie: Zustände und Methoden (start, run, yield, join, interrupt, sleep)
    • Threads im Wesentlichen (ohne Synchronisierung; vgl. Klausuraufgaben)
    • Synchronisierung (Locks, synchronized)
    • Consumer-Producer-Problem (wait, notify, notifyAll)
 
Der letzte Tag (16.03.18) ist als Puffer geplant. Wir werden da machen, was wir sonst nicht geschafft haben oder ihr nochmal zusätzlich kurz üben wollt, bspw. ein paar zusätzliche Altklausuren, nochmal Binär-/Oktal-/Hexdezimalsystemumwandlung, weitere Programmieraufgaben, Visitor-Pattern, ... Vermutlich werden wir auch nochmal einen Großteil der Zeit mit objektorientierten Aufgaben (auch Listen) verbringen.

Zuletzt geändert: Montag, 12. März 2018, 17:35