Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Lesedauer 2 Min.

Erklärt: Closures in C#

Anhand von mehreren Beispielen erklärt Softwareentwickler Mark Pelf auf CodeProject die Arbeit mit C# Closures in Theorie und Praxis.
Closures werden erstellt, wenn man innerhalb einer Funktion/Methode in C# eine Variable aus dem "above scope" referenzieren und dann diese Funktion als Delegat weitergeben. Die Variable aus dem "oberen Bereich" wird mit dem Funktionsdelegat weitergegeben. Stellt der Compiler fest, dass eine Funktion auf die Variable aus dem "darüberliegenden Bereich" zugreift, erstellt er einen Datensatz, in dem er erstens die betreffende Funktion und zweitens die Variable aus dem "darüberliegenden Bereich" (die "gefangene" Variable) speichert und sie zusammen weitergibt.Closures sind knifflig und manchmal schwer zu verstehen. Jeder ambitionierte C#-Entwickler sollte damit vertraut sein, entweder um sie zu verwenden oder um den Code anderer Leute kompetent lesen und debuggen zu können. Closures bieten eine ausgefallene Kapselung in Form einer "gefangenen Variablen", die nicht so leicht zu verstehen ist. Das Tutorial von Mark Pelf versucht, Closures zu erklären und eine ausreichende Anzahl von Beispielen zu liefern. Zielpublikum sind fortgeschrittene C#-Entwickler.

Neueste Beiträge

DDC hakt nach: Wie baust Du eine Softwarearchitektur ohne Schuldenfalle auf?
Moderne Softwarearchitektur muss zukunftsfähig sein – aber auch schon heute funktionieren. David Tielke über den architektonischen Spagat zwischen Cloud, KI, Schuldenmanagement und gesundem Menschenverstand.
7 Minuten
22. Sep 2025
Ein Jahr CODELUTION Zertifizierungssystem – ein neuer Standard in der IT-Weiterbildung - [sponsered]
Das rollenbasierte Zertifizierungssystem für Entwickler-Schulungen der Karlsruher CODELUTION GmbH hebt sich bewusst von technologiegebundenen Zertifikaten ab.
3 Minuten
25. Sep 2025
SSH für.NET-Applikationen mit SSH.NET - Best of NuGet, Teil 1
SSH – dahinter verbirgt sich die Abkürzung Secure Shell – ist insbesondere im Bereich der unixoiden Systeme weit verbreitet. Mit SSH.NET steht ein NuGet-Paket zur Verfügung, das die Interaktion mit der sicheren Remote Shell aus .NET-Applikationen heraus zu ermöglichen sucht.
6 Minuten
25. Sep 2025
Miscellaneous

Das könnte Dich auch interessieren

Mit Datenbanken arbeiten - PHP-Frameworks optimal einsetzen (Teil 4)
PHP-Applikationen greifen häufig auf Datenbanken zu. Das Framework Yii bietet dafür umfassende Unterstützung, beginnend bei der Anbindung der Datenbanken, über eine Repräsentation der Daten bis zur Darstellung auf der Benutzeroberfläche.
10 Minuten
Sicher ist sicher - Azure DevOps Pipelines Security
Als integraler Bestandteil der Entwicklungsumgebung ist Azure DevOps Pipelines oft Ziel von Angriffen. Da ist es gut zu wissen, wo die Schwachstellen des Systems liegen.
14 Minuten
16. Jun 2025
C#-.NET-Apps mit WinUI 3 - Komponentenbasierte Apps mit Fluent/FAST, Teil 3
Microsoft macht mit WinUI 3 ein natives User-Experience-Framework für Windows verfügbar, dessen Komponenten auf dem Microsoft-eigenen Design-System Fluent 2 basieren.
23 Minuten
13. Mai 2024
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige