Steven Geisel

Frozen collections in .NET 8

von - 30.11.2022
Foto: Microsoft.com
.NET 7 ist da, und die Arbeit an .NET 8 hat bereits begonnen. Ein erster Blick auf eine sehr frühe Alpha-Version zeigt eingefrorene Collections.
.NET 8 wird die nächste LTS-Version werden. Bis zu ihrem geplanten Veröffentlichungstermin sind noch rund zwölf Monate Zeit. Der Schweizer Entwickler Steven Geisel hat sich zur Aufgabe gemacht, die Entwicklung von .NET 8 zu begleiten und gelegentlich auch Blogbeiträge dazu zu veröffentlichen. Sein erster Blick auf den Alpha 1 Build von .NET8 -- also auf eine Version, die bis zur Veröffentlichung noch komplett überarbeitet werden wird -- hat ihm die sogenannten Frozen Collections vor Augen geführt.
In diesem englischsprachigen Blogbeitrag diskutiert Geisel die Unterschiede zwischen ImmutableList und einer eingefrorenen Liste. Im Moment kennt .NET8 grundsätzlich zwei Arten von eingefrorenen Sammlungen: FrozenSet und FrozenDictionary.
Auf der Suche nach einer Antwort auf die Frage warum es Frozen Collections braucht, landet Geisel letztlich -- nach dem er einige Benchmarks durchgeführt hat -- bei Performance-Vorteilen für die eingefrorenen Sammlungen. Weiß der Entwickler, dass sich eine einmal eingeführte Liste niemals verändern wird, braucht sein Code auch die Funktionen zum Verändern der Liste nicht mitschleppen. Dann ist die Frozen Collection die richtige, weil schlankere und schnellere Wahl.
Verwandte Themen