Compartir a través de


CA1005: Evite parámetros excesivos en tipos genéricos

TypeName

AvoidExcessiveParametersOnGenericTypes

Identificador de comprobación

CA1005

Categoría

Microsoft.Design

Cambio problemático

Problemático

Motivo

Un tipo genérico visible externamente tiene más de dos parámetros type.

Descripción de la regla

Cuantos más parámetros type contenga un tipo genérico, más difícil resulta saber y recordar qué representa cada uno de ellos.Normalmente, esto resulta evidente con los parámetros de tipo, como en List<T>, y en algunos casos con dos parámetros de tipo, como en Dictionary<TKey, TValue>.Si existen más de dos tipos de parámetros, la dificultad se vuelve demasiado grande para la mayoría de los usuarios (por ejemplo, TooManyTypeParameters<T, K, V> en C# o TooManyTypeParameters(Of T, K, V) en Visual Basic).

Cómo corregir infracciones

Para corregir una infracción de esta regla, cambie el diseño de modo que no se utilicen más de dos parámetros type.

Cuándo suprimir advertencias

No suprima ninguna advertencia de esta regla a menos que el diseño requiera absolutamente más de dos parámetros type.Al proporcionar genéricos con una sintaxis fácil de entender y utilizar se reduce el tiempo necesario de aprendizaje y se aumenta la velocidad de adopción de nuevas bibliotecas.

Reglas relacionadas

CA1010: Las colecciones deben implementar la interfaz genérica

CA1000: No declarar miembros estáticos en tipos genéricos

CA1002: No exponer listas genéricas

CA1006: No anidar tipos genéricos en firmas de miembro

CA1004: Los métodos genéricos deben proporcionar un parámetro de tipo

CA1003: Utilizar instancias genéricas de controlador de eventos

CA1007: Utilizar valores genéricos cuando sea posible

Vea también

Referencia

Genéricos (Guía de programación de C#)