Geschützte Konstruktoren für abstrakte Klassen
Ein Code Änderung ReSharper 4.0 wird, ist, dass, wenn eine öffentliche Konstruktor wird in einer abstrakten Klasse befindet, sollte angepasst, um den geschützten Zugang Modifikator wenn derzeit die öffentliche Nutzung werden:

Also, von hier:
- AbstractClass public class AbstractClass
- (
- öffentlichen AbstractClass ()
- (
- )
- )
Um dies zu:
- AbstractClass public class AbstractClass
- (
-
geschützt AbstractClass ()
- (
- )
- )
Also, warum ist dies ein guter Code zu bearbeiten?
Nun, die einen öffentlichen Konstruktor auf eine abstrakte Klasse im Sinne von Code-Architektur ist seit der abstrakten Klasse irrationalen nicht direkt instanziiert werden, es ist vielmehr durch die im Zuge der Instanziierung Art geschaffen. So können nur abgeleitete Typen haben Zugriff auf die abstrakte Klasse Konstruktor. Geschützte mehr angemessen beschreibt ein Germane Zugriffsmodifizierer für den Konstruktor sowie die Gewährleistung erforderlichen Erbe Typen haben Konstruktor zuzugreifen.
Mehr spürbar, wird in angemessener Weise Zugang Modifikator Dekoration wiederum nicht auffüllen Intellisence mit einem Haufen nutzloser Müll ![]()
In Verbindung stehende Pfosten:
- Mit TypeMock.NET Um Abstract SharePoint Mit Mocks
- Auto-Implemented Properties and Developing WebParts
- Schreiben Extension Methods for SharePoint
- Static Versioning in einem WebPart EditorPart
- SharePoint WebPart Versioning
4 Kommentare »
RSS-Feed für Kommentare zu diesem Beitrag. TrackBack-URL































Haben Sie nicht darüber Bescheid wissen, guter Tipp
)!
(obwohl es unter SharePoint Entwicklung kategorisiert. Sie benötigen einen C # Kategorie oder etwas
Kommentar von James Fortner - 12. Mai 2009 @ 8:07
In der Tat, ich habe einige abstrakte Klassen, die sich dies zu tun. Fixing em up right now!
Kommentar von Kirk Kerr - 12. Mai 2009 @ 8:08
Ich sehe nicht, warum das wichtig ist. Welches sind die relevanten Argumente für eine Implementierung für einen ganzen Produkt für dieses ... Verbesserung.
Kommentar von James Tyson - 12. Mai 2009 @ 8:26
@ James:
Was? Die Begründungen sind, fragen Sie sind in dem Artikel entfernt.
Kommentar von Adam Buenz - 12. Mai 2009 @ 8:30