Zum Inhalt springen

Ablauf

Der Kurs findet wie folgt statt:

  • Kurstage:
    • Mittwoch, 16.04.2025
    • Donnerstag, 17.04.2025
    • Dienstag, 22.04.2025
    • Mittwoch, 23.04.2025
    • Donnerstag, 24.04.2025
  • Kurszeiten:
    • Morgens zwischen 08:15 und 11:45 Uhr
    • Nachmittags zwischen 13:00 und 16:45 Uhr
  • Pausen:
    • Morgens von 09:30 bis ~09:50 Uhr
    • Nachmittags von 14:30 bis ~14:50 Uhr

1. Tag: Typisierung mit TypeScript

  • Ich verstehe was Typisierung ist.
  • Ich kenne die Vor- und Nachteil von Typisierung.
  • Ich typisiere mit TypeScript.
  • Ich kompiliere TypeScript zu JavaScript.
  • Ich verwende Array Funktionen und den Spread Operator.
  • Ich initialisiere ein React Projekt mit TypeScript.
  • Ich erkenne die Unterschiede zwischen JSX und TSX.
  • Ich typisiere Properties einer React Komponente.
ZeitpunktThemaTyp
08:15Gemeinsamer Start in den KursPlenum, Diskussion
08:35Einrichten des TypeScript Compilers und erste ErlebnisseÜbung
08:50Was ist eine Typisierung? Vor- und NachteileVortrag
09:10Was ist TypeScript? Wie funktioniert es?Aufträge
09:30PausePause
10:00Typesieren mit TypeScriptVortrag, Aufträge
11:45MittagMittag
13:00Type InferencingDemonstration, Aufträge
13:20Array Funktionen repetierenAufträge
14:30PausePause
14:50React TypeScript Projekt initialisierenDemonstration, Aufträge
15:30React Komponenten typisierenEinführung, Aufträge
16:30Kurstag rekapitulierenPlenum

2. Tag: React mit TypeScript

  • Ich setze TypeScript Generics ein.
  • Ich kenne die gänigsten TypeScript Helper Typen.
  • Ich kenne React und dessen Umfeld.
  • Ich gestalte Komponenten mit CSS Modules oder CSS-in-JS.
  • Ich unterscheide zwischen Shadow DOM und einem Virtual DOM.
  • Ich verschachlte (Compose Pattern) React-Komponenten.
  • Ich nutze den useState()-Hook und Events für Databinding.
  • Ich verstehe den Lebenszyklus einer React-Komponente.
  • Ich reagiere auf Veränderung mit dem useEffect()-Hook.
ZeitpunktThemaTyp
08:15Repetition zum ersten KurstagPlenum, Diskussion, Quiz
08:30Helper Types und GenericsVortrag, Aufträge
09:30PausePause
09:50Gestalten von Komponenten mit CSSPlenum, Aufträge
11:45MittagMittag
13:00Verschachteln von React-Komponenten (Children, Pass-by-Prop) mit passender TypisierungDemonstration, Aufträge
13:45Wie funktioniert React? (Shadow DOM vs. Virtual DOM)Demonstration, Vortrag
14:00Lebenszyklus einer React-Komponente und HooksVortrag, Aufträge
14:30PausePause
15:00Eigene Komponenten umsetzenAufträge
16:30Kurstag rekapitulierenPlenum

3. Tag: Lokales CRUD von Entitäten mit React

  • Ich nutze geeignete Hilfsmittel (Prettier, ESLint, …) für React-Projekte.
  • Ich teste einzelne React-Komponenten.
  • Ich erfrage Benutzerdaten in Formularen.
  • Ich validiere Benutzereingaben.
  • Ich unterscheide zwischen Container und Components.
  • Ich verwalte einen Application State mit dem useContext()-Hook.
  • Ich persistiere den Application State im Browser.
  • Ich unterscheide zwischen den verschiedenen, persistenten Speicher in einem Browser.
ZeitpunktThemaTyp
08:15Repetition zu letzten WochePlenum, Diskussion, Fragerunde
08:45Quellcodequalität mit Prettier, ESLint und Tests sicherstellenDemonstration, Auftrag
09:30PausePause
10:00Theorie zu CRUD-Operationen mit React verstehenVortrag, Auftrag
11:00Formulare mit React umsetzenAuftrag
11:45MittagMittag
13:00Eingaben validierenAuftrag
13:45Container und Components unterscheidenPlenum
14:00Application State mit useContext()-Hook verwaltenVortrag, Auftrag
14:30PausePause
15:00Application State mit useContext()-Hook verwalten (Fortsetzung)Auftrag
15:30Application State persistierenAuftrag
16:30Browser-Speicher unterscheiden und Rekapitulation vom KurstagPlenum

4. Tag: CRUD von Entitäten über eine API

  • Ich setze Reducer und Store Komponenten für meine Zwecke ein.
  • Ich unterscheide zwischen Komponenten- und Applikationszuständen.
  • Ich greife auf eine REST-API mit fetch() zu.
  • Ich setze einen API-Mock-Server für meine Zwecke ein.
  • Ich entdecke APIs mit den passenden Hilfsmitteln (Postman, Hoppscotch, ..).
  • Ich navigiere zwischen verschiedenen Seiten (Routing).
ZeitpunktThemaTyp
08:15Übersicht wo wir stehen und was noch folgtPlenum, Quiz
08:30Rekapitulation zu REST-APIs mit fetch()Plenum, Auftrag
09:00Aufsetzen von Mock-Server als CRUD-BackendAuftrag
09:30PausePause
10:00Anbinden von React-Applikationen an REST-APIDemonstration, Auftrag
11:45MittagMittag
13:00Anbinden von React-Applikationen an REST-API (Fortsetzung)Auftrag
14:00Routing umsetzenAuftrag
14:30PausePause
15:00React-Applikation nach Vorgaben implementierenChallenge
16:30Auswertung der Challenge und Abschluss des KurstagesPlenum

5. Tag: Workshop

  • Ich kombiniere Komponenten aus fertigen Komponentenframeworks mit meinen eigenen Komponenten.
  • Ich unterscheide zwischen klassischen Webapplikationen, SPAs und PWAs.
  • Ich publiziere eine mit React erstellte PWA.
ZeitpunktThemaTyp
08:15Unterschied zwischen klassischen Webapplikationen, SPAs und PWAsPlenum
08:30Vorgehen wie eine PWA mit React erstellt wirdDemonstration
08:45Einführung in Workshop: Meine kleine React-PWAPlenum
09:00Workshop: PlanungsphaseEinzelarbeit
09:30PausePause
10:00Workshop: UmsetzungsphaseEinzelarbeit
11:45MittagMittag
13:00Workshop: UmsetzungsphaseEinzelarbeit
14:30PausePause
15:00Workshop: ÜberprüfungsphaseEinzelarbeit
16:00Workshop: PublikationsphaseEinzelarbeit
16:30Nächste mögliche Schritte mit ReactPlenum