.github/copilot-instructions.md.github/instructions/artifacts.instructions.md.github/instructions/artifacts-consumers-education.instructions.md.github/instructions/slides.instructions.mdErstelle ein agent-generated example für Logging (MAUI, fortgeschrittene Studierende).
Feature-Scope: minimal. Wende MVVM mit CommunityToolkit.Mvvm und Unit Tests mit MSTest an.
Entscheide anhand der Architektur-Entscheidungstabelle aus den Instructions, welche weiteren Muster (Core-Projekt, Architekturschichten) das Konzept rechtfertigt — verwende sie, wenn dieselbe Komplexität in einem produktiven Einsatz diese Strukturen erfordern würde.
Lies zuerst die Instructions, ermittle den Foliensatz, dokumentiere Instructions + Prompt dort, vergleiche mit manuellem Beispiel, verifiziere MacCatalyst Build mit workaround zum mismatch des workloads mit der xcode version.| Aspekt | Entscheidung | Begründung |
|---|---|---|
| Feature-Scope | Minimal (eine loggende Aktion) | Fokus bleibt auf Logging und Testbarkeit |
| MVVM | Ja | Datenbindung + Commands für UI-Interaktion |
| Unit Tests | Ja (MSTest) | Logging- und Lifecycle-Verhalten direkt testbar |
| Core-Projekt + Interfaces | Nein | Keine Persistenz/REST/Auth-ähnliche Komplexität |
| Architekturschichten | Nein | Für Logging-Demo nicht erforderlich |
LoggingRecipe.ViewModelsCommunityToolkit.Mvvm mit Message, LastLog, LifecycleState und LogInfoCommandMauiProgram.csValidateXcodeVersion=false| Kriterium | Manuelles Beispiel | Agent-generated Beispiel |
|---|---|---|
| Kernfunktion | Counter-Button | Logging-Command mit Ergebnisanzeige |
| MVVM | nein | ja |
| Logger-Nutzung | nur App-Startlog | App + ViewModel-Logging |
| Unit Tests | keine | 3 MSTest-Tests |
| Lifecycle-Transparenz | nein | ja (LifecycleState) |
Fazit: Das agent-generated Beispiel ist für fortgeschrittene Studierende didaktisch besser geeignet, weil Logging, MVVM und Testbarkeit gemeinsam sichtbar sind.
dotnet test LoggingRecipe.Tests/LoggingRecipe.Tests.csproj → 3/3 erfolgreichdotnet build LoggingRecipe/LoggingRecipe.csproj -f net10.0-maccatalyst -p:ValidateXcodeVersion=false → erfolgreich