Kurs Inhalt
Wie Du diesen Kurs am besten durchgehst
Software Tests
JUnit in Eclipse und Installation
Inhalte:
- Einführung Unit Tests (gibt es in allen Programmiersprachen!)
- ab 4:00 Installation JUnit in Eclipse
- ab 6:00 Erstellung Unit Testklasse
Annotations, Assertions
Inhalte:
- Erklärung der Annotations (@Test, @Before, @After)
- ab 1:25 Ausführliches Beispiel eines ganzen Tests
- assertTrue, ausführen von Tests
- ab 4:35 Warum überhaupt Tests?
Unit Test mit Beispielaufgabe
Inhalte:
- Wie schreibe ich Tests in der Prüfung?
- ab 2:55 Beispielaufgabe
- ab 5:15 Knackpunkt herausfinden!
- ab 7:25 die Bestandteile jeder Testmethode
Lösungsweg Unit Test für Messwertaufgabe
Inhalte:
- Lösungsweg für die Messwerttestaufgabe
- Beispiel mit Betrachtung der Testdaten
- Übliche Schwierigkeiten für Studenten
Integrationstest in Gradleprojekt
Inhalte:
- Struktur bei Gradle-Projekt
- Erklärung Projekt für Integrationstest
- ab 4:15 Start mit Unit Test
- ab 6:15 Integrationstest
- ab 9:00 Umgang mit Gradle
- ab 10:55 Prüfungshinweise
Aufgaben Masterplan
Bausteine der Lösung richtig anordnen
Inhalte:
- Wie finde ich heraus, welche Bestandteile der Aufgabe wie zu verwenden sind?
- Wie lerne ich, die richtige Lösung zu finden?
- ab 4:48 Typen von Aufgabenstellungen und warum das wichtig ist
- Warum haben Professoren ein anderes Mindset?
Der erste Schritt: Methodenköpfe
Inhalte:
- Wie mache ich in Aufgaben den ersten Schritt?
- Auf welche Wörter muss ich achten, um den Methodenkopf zu ermitteln?
- Wie kann ich bei Methoden Schritt für Schritt vorgehen?
Schritt für Schritt zur Lösung ohne Schreibblockade
Inhalte:
- Wie kann ich beim Bearbeiten von Aufgaben Schritt für Schritt vorgehen?
- Wie bekomme ich diese Schreibblockade am Anfang weg?
- Wie gehe ich mit Typ 2-Aufgaben um?
Schritt für Schritt - Lösungsweg für die Beispielaufgabe
Inhalte:
- Gemeinsame Lösung der Aufgabe aus dem letzten Video Schritt für Schritt
- Ganz konkrete Vorschläge, wie diese Typ-2 Aufgabe mit fehlenden Infos ergänzt werden kann, die zur Lösung passen
Programmablauf verstehen
Inhalte:
- Wie lerne ich wie eine Programmiersprache zu denken?
- Aufgabe zum Üben
- Besprechung der Lösung
Weitere Abschnitte im Masterplan
Inhalte:
- Welche Kapitel sind noch für mich wichtig?
- Wie kann ich das Maximum aus dem Masterplan rausholen?
Themenauswahl
Aufbau der Schwierigkeit
Inhalte:
- In welcher Reihenfolge sollte ich mich auf die Themen vorbereiten?
- Welche Themen sind besonders schwer?
- hauptsächlich Bezug zu Java, anwendbar auf andere Sprachen (C++, Python, …)
Datentypen finden und warum das so wichtig ist
Inhalte:
- Wie finde ich den richtigen Datentypen eines Codeabschnitts?
- Wie hängt das Thema Gültigkeitsbereich damit zusammen?
- für alle Programmiersprachen, in denen es Datentypen gibt (Java, C++, Python, Javascript, Dart, …)
Instanzen/Objekte als Attribute
Inhalte:
- Wie gehe ich mit vielen Klassen in einer Aufgabe um?
- Was mache ich, wenn Klasseninstanzen Attribute sind?
Git mit seinen Befehlen und Github
Inhalte:
- Einführung in Git mit den wichtigsten Elementen
- ab 4:05 einfaches praktisches Beispiel
- ab 5:15 wichtigste Git-Befehle (init, status, add, commit, log)
- ab 9:55 Infos zum Synchronisieren mit dem Repositoryserver (push, pull)
- 10:38 - 11:48 Unterschied Git und Github
- ab 12:00 Tipp zum Üben für die Prüfung (+ git diff)
Algorithmen und komplexe Theorie - wie soll ich das lesen?
Inhalte:
- allgemeine Prüfungshinweise zu Algorithmen und komplexer Theorie
- ab 1:50 verschiedene Varianten für die Darstellung von Algorithmen
- ab 4:40 Algorithmen als mathematische Formeln
- ab 5:20 Übersetzung der Formel in Programmcode
Algorithmen und komplexe Theorie - Selection Sort
Inhalte:
- Beschreibung Selection Sort
- ab 2:20 fertiger Code aus Aufgabe
- ab 4:30 Demo des laufenden Codes
- ab 5:40 Änderung der Variablennamen
- ab 8:40 Prüfungshinweise
Docker
Docker, Dockerfiles und Schiffscontainer
Inhalte:
- Was bringt Docker?
- ab 3:30 Beispiel Dockerfile mit Aufbau
(FROM, WORKDIR, COPY, RUN, EXPOSE, CMD) - ab 10:10 Vergleich mit Schiffscontainern
Docker-Compose mit Beispiel - Wordpress
Inhalte:
- Erklärung docker-compose für das Verbinden von Containern
- ab 2:30 Beispiel docker-compose mit Aufbau
(image, volumes, restart, environment, depends_on, build, ports) - ab 5:15 Praktisches lauffähiges Beispiel mit Wordpress
- ab 11:50 Wordpress Installation
- ab 12:25 Wichtig für die Prüfung
Fehlerstrategien mit Docker
Inhalte:
- Vorgehen bei der Fehleranalyse mit Docker und Docker Compose
- Wie ist vorzugehen bei einem falschem Port oder falschem Servicenamen?
- Wo sucht man, wenn ein Fehler auftritt?
- Vorgehen bei einer MySQL-Datenbank
Shells und Linux
Einführung Shells und Üben auf Server
Inhalte:
- Einführung Linux Shells
- ab 2:20 Wie kann ich mit einem Server üben?
- Windows cmd und Powershell
Shell-Befehle, Zusammenhang Server, IPs, Domains, Webserver
Inhalte:
- Login auf dem Server
- Befehle (top, clear, ls, pwd, cd, cat)
- Zusammenhang Server, IPs, Domains, Apache Webserver
- ab 6:15 Apache Konfiguration (VirtualHosts, ProxyPass)
Linux Firewall ufw und Linux Prozesse
Inhalte:
- Firewall ufw
- Verwendung als Administrator
- Befehle (ufw status, allow, deny)
- Installation
- Prompt
- ab 4:15 Prozesse (ps)
Shell-Befehle, Kontrollstrukturen, Funktionen
Inhalte:
- Shellbefehle (var=, echo, curl, chmod, chown, grep, rm)
- Kontrollstrukturen auf der Shell (if-fi, while-done)
- Pipe-Operator (|)
- Umleitungsoperator (>)
- ab 6:55 Funktionen
- ab 7:30 Parallele Prozesse
- ab 9:00 Skripte erstellen und ausführen und killen
Letzte Hinweise und nächste Schritte