Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Grundsätzlich stellen Methoden Aktionen und Eigenschaften Daten dar. Eigenschaften werden wie Felder verwendet und sollten daher mit keinem großen Rechenaufwand verbunden sein oder Nebeneffekte erzeugen. Weitere Informationen über den Eigenschaftenentwurf finden Sie unter Entwurf indizierter Eigenschaften und Benachrichtigungsereignisse für Eigenschaftenänderungen.
Die folgenden Richtlinien erleichtern einen guten Entwurf von Eigenschaften.
Erstellen Sie schreibgeschützte Eigenschaften, wenn der Aufrufer den Wert einer Eigenschaft nicht ändern können soll.
Beachten Sie, dass sich die Veränderlichkeit des Eigenschaftentyps darauf auswirkt, was vom Benutzer geändert werden kann. Wenn Sie z. B. eine schreibgeschützte Eigenschaft definieren, die eine Auflistung mit Lese-/Schreibzugriff zurückgibt, kann der Endbenutzer der Eigenschaft keinen anderen Wert zuweisen, doch kann er die Elemente in der Auflistung ändern.
Verwenden Sie keine lesegeschützten Eigenschaften.
Wenn der Eigenschaftengetter nicht bereitgestellt werden kann, verwenden Sie zum Implementieren der Funktionalität stattdessen eine Methode. Der Methodenname sollte mit Set beginnen, worauf die Bezeichnung folgt, die die Eigenschaft darstellt. Beispielsweise verfügt AppDomain über eine Methode mit dem Namen SetCachePath statt über eine lesegeschützte Eigenschaft mit dem Namen CachePath.
Verwenden Sie für alle Eigenschaften sinnvolle Standardwerte, um sicherzustellen, dass die Standardwerte keine Sicherheitslücke oder einen extrem ineffizienten Entwurf verursachen.
Lassen Sie das Festlegen von Eigenschaften in beliebiger Reihenfolge zu, auch wenn dies zu einem vorübergehend ungültigen Objektzustand führt.
Behalten Sie den vorherigen Wert bei, wenn ein Eigenschaftensetter eine Ausnahme auslöst.
Lassen Sie keine Ausnahmen von Eigenschaftengettern auslösen.
Bei Eigenschaftengettern sollte es sich um einfache Operationen ohne Vorbedingungen handeln. Wenn ein Getter möglicherweise eine Ausnahme auslöst, sollten Sie die Eigenschaft eventuell in eine Methode ändern. Diese Empfehlung gilt nicht für Indexer. Indexer können Ausnahmen aufgrund ungültiger Argumente auslösen.
Das Auslösen von Ausnahmen von einem Eigenschaftensetter ist gültig und zulässig.
Copyright für einzelne Teile 2005 Microsoft Corporation. Alle Rechte vorbehalten.
Copyright für einzelne Teile Addison-Wesley Corporation. Alle Rechte vorbehalten.
Weitere Informationen zu Entwurfsrichtlinien finden Sie unter „Framework-Entwurfs-Richtlinien: Idiome, Konventionen und Muster für wiederverwendbare .NET-Bibliotheken von Krzysztof Cwalina“ book und Brad Abrams, veröffentlicht von Addison-Wesley, 2005.