Programmiersprache 24.04.2024, 07:29 Uhr

Primärkonstruktoren in C# erleichtern den Code-Refactoring-Prozess

Zusammenfassen, was zusammen gehört: Dabei helfen die in C# 12 neu eingeführten Primärkonstruktoren.
(Quelle: dotnetpro)
C# 12 hat eine Reihe neuer Funktionen eingeführt, darunter die Primärkonstruktoren (Primary Constructors). Sie ermöglichen es, eine Klasse oder Struktur zusammen mit ihrem Konstruktor in einer einzigen, prägnanten Deklaration zu definieren. Dies hilft dabei, den Code zu reduzieren, den Sie normalerweise schreiben müssten.
Die schon bekannten Record-Typen können einen Primärkonstruktor enthalten. Im Gegensatz zu herkömmlichen Klassen oder Strukturen, bei denen die Parameter des Primärkonstruktors im gesamten Klassendefinitionsbereich zugänglich sind, sind Record-Typen transparente Datencontainer. Sie unterstützen standardmässig wertebasierte Gleichheit und sind darauf ausgelegt, Daten zu halten. Daher ist es logisch, dass die Parameter des Primärkonstruktors als Eigenschaften zugänglich sind.
namespace Example.Worker.Service
{
  public class Worker(ILogger<Worker> logger) : BackgroundService
  {
    protected override async Task ExecuteAsync(
      CancellationToken stoppingToken)
    {
      while (!stoppingToken.IsCancellationRequested)
      {
        if (logger.IsEnabled(LogLevel.Information))
        {
          logger.LogInformation(
            "Worker running at: {time}", DateTimeOffset.Now);
        }
        await Task.Delay(1000, stoppingToken);
      }
    }
  }
}
Der grosse Vorteil eines Primärkonstruktors ist, dass er Code zusammenfasst und damit kürzer und klarer macht. Die Parameter sind direkt im Konstruktor sichtbar, was die Wartung erleichtert und die Fehleranfälligkeit verringert.
Mehr dazu enthält der Beitrag auf den DevBlogs



Das könnte Sie auch interessieren