In meinem aktuellen Projekt bin ich auf die Anforderung gestoßen, generische Klassen mit demselben Namen, aber unterschiedlicher Anzahl von generischen Parametern zu erstellen. Beispielsweise:
MyClass<T1>
MyClass<T1, T2>
MyClass<T1, T2, T3>
Da ich alle im selben Namespace haben möchte, bin ich nicht sicher, wie ich meine Klassen und Dateien strukturieren und benennen soll.
Wenn wir der Idee folgen, dass wir Klassen auf eine pro Datei beschränken sollten und dass sich Dateien in einer Ordnerstruktur befinden sollten, die die Namespace-Hierarchie darstellt, und dass der Name der Datei mit dem Namen der Klasse übereinstimmen sollte, wie gehe ich mit dieser Situation um ?
Was ich hier wirklich frage, ist, wie soll ich die Datei benennen, die enthält MyClass<T1>
, und wie soll ich die Datei benennen, die enthält MyClass<T1, T2>
? Ich frage nicht, wie die Namen der Typparameter sein sollten.
TKey, TValue
Konvention. Func hat einen TResult
Typparameter. Obwohl ich damit einverstanden , dass Sie verwenden können T1
, T2
usw. für eine variable Anzahl von Eingabeparametern , die wie keine sonst spezifische Anwendungen haben TKey
und TValue
.