Lehrplan und Ablauf
Lehrplan - IV. Jahrgang
Abschnitt betitelt „Lehrplan - IV. Jahrgang“Der Lehrplan für SEW - Softwareentwicklung im IV. Jahrgang sieht wie folgt aus (Zitat aus dem offiziellen Lehrplan):
7. Semester - Kompetenzmodul 7
Abschnitt betitelt „7. Semester - Kompetenzmodul 7“Bildungs- und Lehraufgabe
Abschnitt betitelt „Bildungs- und Lehraufgabe“Die Schülerinnen und Schüler können im
Bereich Anwendungsentwicklung
- Anwendungssysteme unter Verwendung von Nebenläufigkeit entwickeln;
- einfache Schnittstellen zur Kommunikation zwischen Anwendungen entwerfen und implementieren.
Lehrstoff
Abschnitt betitelt „Lehrstoff“Bereich Anwendungsentwicklung:
- Definition und Implementierung von Schnittstellen, Threading.
8. Semester - Kompetenzmodul 8
Abschnitt betitelt „8. Semester - Kompetenzmodul 8“Bildungs- und Lehraufgabe
Abschnitt betitelt „Bildungs- und Lehraufgabe“Die Schülerinnen und Schüler können im
Bereich Anwendungsentwicklung
- umfangreiche Client-Server Anwendungen entwickeln;
- unter Verwendung von Frameworks und Middleware komplexe Anwendungssysteme entwickeln;
- Daten mit Hilfe von strukturierten Datenformaten zwischen Anwendungen austauschen.
Lehrstoff
Abschnitt betitelt „Lehrstoff“Bereich Anwendungsentwicklung:
- Mehrschichtarchitektur, Protokolle, strukturierte Datenformate, Zugriff auf strukturierte Daten, Umsetzen von Aufgabenstellungen aus den fachtheoretischen Gegenständen.
Daraus ergibt sich der folgende (grobe) Wochenplan für das IV. Jahr:
4. Klasse - Wochenplan
Abschnitt betitelt „4. Klasse - Wochenplan“Verplant sind in der 4. Klasse 31 Wochen, wobei 4 Wochen für das Client-Server-Projekt am Ende reserviert sind. Werkzeuge: JavaScript/TypeScript mit Next.js.
-
JavaScript und TypeScript (2 Wochen)
Werkzeuge (Node), moderne JS-Grundlagen als Einführung mit Wiederholungscharakter; TypeScript: Typen, Interfaces, Generics in Grundzügen -
npm: Pakete und Projekte (1 Woche)
package.json und Skripte, Abhängigkeiten, Semantic Versioning und Sperrdatei, Umgang mit fremdem Code -
Nebenläufigkeit I: Asynchrones JavaScript (3 Wochen)
Event Loop, Callbacks, Promises, async/await; Fehlerbehandlung in asynchronem Code -
Nebenläufigkeit II: Koordination (2 Wochen)
Promise.all/race, Abbruch, Timeouts, Race Conditions; Worker als Ausblick auf Threading -
HTTP und Schnittstellen (2 Wochen)
Protokollgrundlagen, Request/Response, Methoden, Statuscodes; fetch; fremde APIs konsumieren -
Schnittstellen entwerfen (2 Wochen)
REST-Prinzipien, Ressourcen, JSON als Datenvertrag, API-Dokumentation, Versionierung in Grundzügen -
React-Grundlagen (3 Wochen)
Komponenten, Props, State, Events; deklaratives Denken; Komponenten-Hierarchien -
Next.js I: Struktur und Routing (2 Wochen)
Projektaufbau, App Router, Seiten und Layouts, Server- vs. Client-Komponenten -
Next.js II: API-Routen und Datenfluss (3 Wochen)
Eigene Schnittstellen als API-Routen implementieren, Datenabruf, Formulare und Mutationen -
Mehrschichtarchitektur (2 Wochen)
Präsentation - Logik - Datenzugriff; Schichten in Next.js praktisch umsetzen; Austauschbarkeit demonstrieren -
Persistenz (2 Wochen)
Datenzugriffsschicht mit Datei/SQLite (Abstimmung mit INSY); strukturierte Daten lesen und schreiben -
Middleware und Validierung (2 Wochen)
Middleware-Konzept, Validierung von Ein-/Ausgaben an der Schnittstelle, Fehlerformate -
Qualität im Team (1 Woche)
Code-Reviews, Branch-Workflow, Tests für API und Logik-Schicht -
Projekt: Client-Server-Anwendung (4 Wochen)
Umfangreiche Anwendung in Teams: eigene REST-Schnittstelle, Mehrschichtarchitektur, Persistenz, Doku