Automatgenererad kod med Roslyn
The presentation I held at the p2p-k1darch conference
Ola Fjelddahl Göteborgskontoret
https://selfelected.com https://github.com/LosManos/
10. Me, myself and I
11. Me, myself and I
Idag skall vi prata om automatgenererad kod i allmänhet
och Roslyn code generator i synnerhet
20. T4
Kör när filer ändras. Minns inte hur man kopplar det.
Också Framework.
https://learn.microsoft.com/en-gb/previous-versions/visualstudio/visual-studio-2015/modeling/code-generation-and-t4-text-templates
30. Roslyn
Analyzer och Code generator
Vid “kompilering”
Känner endast till syntaxen.
Plus något sorts kompilierings-context
Skapa kod via sträng eller kod/syntaxträd.
Lägger endast till kod
Borde inte kunna användas för AOP
Gamla sättet
Vid kompilering, får allt. Du söker ut det intressanta.
Inkrementellt
Nya inkrementella sättet, får anrop vid kompilering.
40. Var man startar
https://learn.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/source-generators-overview
Den skapar dock enligt gamla sättet.
Gå vidare till Andrew Lock
https://andrewlock.net/creating-a-source-generator-part-1-creating-an-incremental-source-generator/
Skapa kod med kod
https://carlos.mendible.com/2017/03/02/create-a-class-with-net-core-and-roslyn/
https://roslynquoter.azurewebsites.net
Min kod
https://github.com/LosManos/FactoryMethodCodeGenerato
100. Frågor på detta?
Och nu…
Kod!