Zum Hauptinhalt springen
Veröffentlicht am

partial in C#

Teilen:

Einführung

Bei der Arbeit an großen oder kollaborativen Projekten in C# stoßen wir häufig auf die Notwendigkeit, die Implementierung einer Klasse oder Methode auf mehrere Dateien aufzuteilen, um eine bessere Organisation oder Zusammenarbeit zu ermöglichen. Hier kommt der partial-Modifikator ins Spiel.

Was ist der partial-Modifikator?

Der partial-Modifikator in C# wird verwendet, um die Definition einer Klasse, Struct oder Schnittstelle auf mehrere Dateien aufzuteilen. Jede Datei enthält einen Abschnitt der Klassendefinition, und alle Teile werden beim Kompilieren der Anwendung zusammengeführt.

Vorteile von partial

  1. Organisation: Ermöglicht eine bessere Codeorganisation, besonders nützlich bei sehr umfangreichen Klassen.
  2. Teamarbeit: Erleichtert die kollaborative Arbeit, da verschiedene Teammitglieder gleichzeitig an verschiedenen Teilen derselben Klasse arbeiten können.
  3. Trennung von generiertem und manuellem Code: In Anwendungen, die grafische Designer verwenden (wie Windows Forms oder WPF), wird Code häufig automatisch generiert. Mit partial können wir den automatisch generierten Code vom manuell geschriebenen Code trennen.
  4. Flexibilität: Ermöglicht mehr Flexibilität bei der Strukturierung des Codes und fördert eine logischere Organisation.

Einschränkungen

  • Alle Dateien, die einen Teil der partial-Klasse enthalten, müssen gemeinsam kompiliert werden.
  • Wenn ein Klassenmember als private deklariert ist, bleibt er auf diesen spezifischen Teil der Klasse beschränkt. Die anderen partial-Dateien derselben Klasse haben keinen Zugriff darauf.
  • Für partial-Methoden können keine Zugriffsmodifikatoren definiert werden.

Praktisches Beispiel

Das folgende Beispiel zeigt die Verwendung von partial in zwei Teilen einer Person-Klasse:

using System;

namespace Base {
  class Partial {
    public void Run() {
      var person = new Person();
      person.Informationen();

      /*
        Name: Nelson Silva
        Alter: 28
      */
    }
  }

  partial class Person {
    private string vorname = "Nelson";
    partial void _Informationen();

    public void Informationen() {
      _Informationen();
    }
  }

  partial class Person {
    private string nachname = "Silva";
    private int alter = 28;

    partial void _Informationen() {
      Console.WriteLine($"Name: {vorname} {nachname}");
      Console.WriteLine($"Alter: {alter}");
    }
  }
}

Fazit

Der partial-Modifikator ist ein wertvolles Werkzeug in C# und bietet eine flexible Möglichkeit, Code in größeren Projekten oder bei der Teamarbeit zu organisieren und zu strukturieren. Wir hoffen, dass dieser Artikel verdeutlicht hat, wie und wann dieser Modifikator im eigenen Code eingesetzt werden sollte.

Happy coding!