CA1005: Vyhnout se nadměrnému parametry na obecné typy
TypeName |
AvoidExcessiveParametersOnGenericTypes |
CheckId |
CA1005 |
Kategorie |
Microsoft.Design |
Narušující změna |
Narušující |
Příčina
Externě viditelný generický typ má více než dva parametry typu.
Popis pravidla
Čím více parametrů typu generický typ obsahuje, tím obtížnější je vědět a zapamatovat si, co každý z parametrů typu představuje.To je obvykle zřejmé v případě jednoho parametru typu, například u List<T>, a v některých případech se dvěma parametry typu, například u Dictionary<TKey, TValue>.Existují-li více než dva parametry typu, stává se pro většinu uživatelů obtížnost příliš velká (například TooManyTypeParameters<T, K, V> v jazyce C# nebo TooManyTypeParameters(Of T, K, V) v jazyce Visual Basic).
Jak vyřešit porušení
Chcete-li opravit toto porušení, změňte návrh tak, aby nebylo používáno více než dvou parametrů typu.
Kdy potlačit upozornění
Toto upozornění nepotlačujte, pokud návrh nevyžaduje zcela jednoznačně více než dva parametry typu.Poskytování generických typů v syntaxi, která je snadno pochopitelná a použitelná, urychluje učení nových knihoven a zvyšuje rychlost jejich přejímání.
Související pravidla
CA1010: Kolekce by mělo provádět obecné rozhraní
CA1000: Nelze deklarovat statické členy na obecné typy
CA1002: Obecný seznamech neuvádějí.
CA1006: Nelze vnořit obecné typy v podpisech členské
CA1004: Obecné metody by měl poskytnout parametr typu
CA1003: Použít událost obecný popisovač instance
CA1007: Pomocí generics, případně