Поделиться через


CA1005: не используйте слишком много параметров в универсальных типах

TypeName

AvoidExcessiveParametersOnGenericTypes

CheckId

CA1005

Категория

Microsoft.Design

Критическое изменение

Критическое изменение

Причина

Внешне видимый универсальный тип имеет более двух параметров типов.

Описание правила

Чем больше параметров типов содержит универсальный тип, тем сложнее знать и запоминать, что представляет каждый параметр типа. Это обычно становится очевидным при одном параметре типа, как в List<T>, и в ряде случаев при двух параметрах типов, как в Dictionary<TKey, TValue>. Если используется более двух параметров типов, большинство пользователей начинают испытывать большие трудности (например, TooManyTypeParameters<T, K, V> в C# или TooManyTypeParameters(Of T, K, V) в Visual Basic).

Устранение нарушений

Чтобы устранить нарушение этого правила, не используйте при разработке более двух параметров типов.

Отключение предупреждений

Не следует отключать предупреждение из этого правила, если просто необходимо использовать более двух параметров типов. Использование универсальных типов в синтаксисе, который легко понимать и использовать, сокращает время, необходимое на обучение, и улучшает скорость адаптации новых библиотек.

Связанные правила

CA1010: коллекции должны реализовывать универсальный интерфейс

CA1000: не объявляйте статические элементы в универсальных типах

CA1002: не следует раскрывать универсальные списки

CA1006: не вкладывайте универсальные типы в сигнатуры членов

CA1004: универсальные методы должны предоставлять параметр типа

CA1003: используйте экземпляры обработчика универсальных событий

CA1007: используйте универсальные методы, если это уместно

См. также

Ссылки

Универсальные шаблоны (Руководство по программированию на C#)