Beim Entwickeln von Anwendungen mit .NET gibt es manchmal Stellen, an denen man immer wieder ein und denselben Code schreiben muss. Mit C# Source Generators lässt sich dieser Code generieren, und das ganze direkt während man selbst im Code-Editor tippt.
In dieser Session starten wir mit einer Einführung in C# Source Generators. Wir werfen zunächst einen Blick auf das von Thomas entwickelte MVVM Framework namens MvvmGen, welches auf C# Source Generators basiert. Anschließend starten wir damit, einen eigenen kleinen Source Generator zu entwickeln, um die Grundlagen zu verstehen und um damit wiederkehrenden Code in unseren Projekten zu generieren statt zu tippen.
Thomas Claudius Huber ist Microsoft MVP im Bereich Windows Development und Senior Principal Consultant bei der Trivadis AG. Als Trainer, Berater und Entwickler ist er in den Bereichen C#, TypeScript, WPF, UWP, Angular und Azure unterwegs. Da ihn Benutzeroberflächen schon seit seinem Informatikstudium faszinierten, setzte er sich seit der ersten WPF-Version mit der UI-Programmierung mit XAML auseinander. Heute setzt er neben XAML-UIs begeistert Anwendungen mit TypeScript und Angular um. Er ist Autor verschiedenster Bücher, darunter „Getting Started with TypeScript“ und das umfassende Handbuch zur Windows Presentation Foundation. Seine persönliche Webseite finden Sie unter https://www.thomasclaudiushuber.com.
▼ ▼ ▼ Timestamps ▼ ▼ ▼
[00:00] Willkommen
[30:40] Wieso generieren von Code?
[33:23] Agenda
[34:24] Codegenerierung mit .NET
[38:14] Codegenerierung mit C# Source Generators
[53:12] Entwicklungsprozess
[53:44] Beispiel Generator mit MvvmGen
[1:26:48] Cross-Platform Apps mit .NET
[1:40:34] Peinliche Geschichte erzählen
[1:43:51] Gregor schreibt einen Source Generator
[2:48:24] Debuggen vom Source Generator
[2:50:10] Unit-Tests für Source Generator
[2:55:42] Gregor schreibt einen Source Generator - Teil 2
[3:18:40] Quiz mit Verlosung
[3:31:15] Abschied
✅ Mein Equipment: https://kit.co/GregorBiswanger/gregor...
Folge mir auf / gregorbiswanger
Komm zur Community auf / discord