CA1005: Uniknąć nadmiernego parametrów na typy rodzajowe
TypeName |
AvoidExcessiveParametersOnGenericTypes |
CheckId |
CA1005 |
Kategoria |
Microsoft.Design |
Zmiana kluczowa |
Kluczowa |
Przyczyna
Widoczny z zewnątrz typ generyczny posiada więcej niż dwa parametry typu.
Opis reguły
Im więcej parametrów typu zawiera typ generyczny, tym trudniej jest poznać i zapamiętać co reprezentuje każdy parametr typu.Zazwyczaj jest to oczywiste w przypadku jednego typu parametru, tak jak w List<T> i w niektórych przypadkach z dwoma parametrów typu, tak jak w Dictionary<TKey, TValue>.Jeśli istnieją więcej niż dwa parametry typu, poziom trudności staje się zbyt duży dla większości użytkowników (na przykład TooManyTypeParameters<T, K, V> w języku C# lub TooManyTypeParameters(Of T, K, V) w języku Visual Basic).
Jak naprawić naruszenia
Aby naprawić naruszenie tej reguły, należy zmienić projekt tak, aby używać nie więcej niż dwa parametry typu.
Kiedy pominąć ostrzeżenia
Nie należy pomijać ostrzeżenie od tej reguły, chyba że projekt absolutnie wymaga więcej niż dwóch parametrów typu.Dostarczanie ogólników w składni, które są łatwe do zrozumienia i użycia, skraca czas wymagany do nauki i zwiększa szybkość procesu wdrażania nowych bibliotek.
Powiązane reguły
CA1010: Kolekcji należy implementować interfejs rodzajowy
CA1000: Elementy statyczne nie są deklarowane w typach podstawowych
CA1002: Nie będą uwidaczniać rodzajowy list
CA1006: Nie zagnieżdżaj typy rodzajowe w Członkowskim podpisów
CA1004: Metody rodzajowe powinny dostarczyć parametr typu
CA1003: Użyj wystąpień programu obsługi zdarzeń rodzajowy
CA1007: Użyj generyczne, gdzie stosowne