Rainer Stropek
Exploring the Latest Features of .NET and C# by Building a Game
#1about 4 minutes
Setting up the .NET 8 game project with SkiaSharp
The project is configured with .NET 8, WPF for the window, and SkiaSharp for 2D rendering, using a sprite sheet for game assets.
#2about 7 minutes
Building the game window using file-scoped types
The main game window is created using file-scoped types to restrict visibility, along with modern null checking and extension method deconstructors.
#3about 3 minutes
Using top-level statements and natural delegate types
The application entry point is simplified using top-level statements, and natural types allow passing method groups directly to parameters expecting delegates.
#4about 7 minutes
Using raw string literals and UTF-8 for JSON data
Raw string literals simplify embedding multi-line JSON, and the u8 suffix creates an efficient UTF-8 byte span directly from the literal.
#5about 7 minutes
Customizing JSON deserialization with JsonTypeInfoResolver
Use JsonTypeInfoResolver to programmatically apply custom converters to external types during deserialization, avoiding the need for intermediate DTOs.
#6about 4 minutes
Implementing player movement and drawing logic
The core drawing loop is implemented to render the player, and target-typed new() expressions simplify object creation within switch expressions.
#7about 11 minutes
Filtering collections with list pattern matching in LINQ
List patterns are used within LINQ queries to filter collections based on the properties and sequence of their elements.
#8about 14 minutes
Creating generic parsing logic with the IParsable interface
The IParsable<T> interface enables writing generic algorithms for parsing strings, with list patterns used to implement the parsing logic for a custom type.
Related jobs
Jobs that call for the skills explored in this talk.
Featured Partners
Related Videos
C# 13 Unleashed: Live Demos of my Top 10 Cutting-Edge Features!
Ambesh Singh & Sachin Kumar
Hacking C# from the inside - how to do anything in NET
Adam Furmanek
5 features that help you get the most out of C# 10
Louëlla Creemers
Building a Compiler with C#
Florian Rappl
Down the Oregon Trail with Functional C#
Simon Painter
Tips, tricks and quirks in .NET
Paweł Łukaszuk
Modern C#: A Dive into the Community's Most Loved new Features.
Louëlla Creemers
.NET Apps Everywhere!
Steve Bilogan
From learning to earning
Jobs that call for the skills explored in this talk.
Fullstack Entwickler C#/.NET & JavaScript (*)
Stolzberger GmbH
Berlin, Germany
Remote
.NET
Azure
Scrum
Docker
+4
