Condividi tramite


CA1005: Evitare un uso eccessivo di parametri nei tipi generici

TypeName

AvoidExcessiveParametersOnGenericTypes

CheckId

CA1005

Category

Microsoft.Design

Breaking Change

Breaking

Causa

Un tipo generico visibile esternamente presenta più di due parametri di tipo.

Descrizione della regola

Quanto più è alto il numero di parametri di tipo contenuti, maggiore è la difficoltà di sapere e ricordare cosa rappresenta ciascun parametro. Di solito, è ovvio con un parametro di tipo, come in List<T>, e in alcuni casi anche con due, come in Dictionary<TKey, TValue>. Se i parametri di tipo sono più di due, la difficoltà si rivela eccessiva per la maggior parte degli utenti (ad esempio, TooManyTypeParameters<T, K, V> in C# o TooManyTypeParameters(Of T, K, V) in Visual Basic).

Come correggere le violazioni

Per correggere una violazione di questa regola, modificare la progettazione in modo che non vengano utilizzati più di due parametri di tipo.

Esclusione di avvisi

Non escludere avvisi per questa regola a meno che la progettazione non richieda assolutamente più di due parametri di tipo. La presenza di generics in una sintassi facile da comprendere e utilizzare riduce il tempo necessario all'apprendimento e aumenta la frequenza di adozione di nuove librerie.

Regole correlate

CA1010: Gli insiemi devono implementare un'interfaccia generica

CA1000: Non dichiarare membri statici su tipi generici

CA1002: Non esporre elenchi generici

CA1006: Non annidare tipi generici nelle firme dei membri

CA1004: I metodi generici devono fornire parametri di tipo

Ca1003: Utilizzare istanze di gestori eventi generici

CA1007: Utilizzare generics dove appropriato

Vedere anche

Riferimenti

Generics (Guida per programmatori C#)