Я думаю, что SA1402 — отличное правило, но у меня проблемы с дженериками. У меня есть класс, который использует делегат Func
, поэтому имена примерно совпадают с этой подписью. То есть у меня есть классы с именами Operation<TType>
, Operation<T, TType>
, Operation<T1, T2, TType>
и так далее. Согласно SA1402, мне нужно все эти маленькие классы поместить в отдельные файлы и придумать какое-нибудь странное украшение для имени файла. Кроме того, если мне нужно изменить один из этих элементов, мне обычно нужно внести изменения в остальные. Это кажется менее поддерживаемым, чем один модуль.
Имеет ли смысл для SA1402 разрешать дженерикам одного и того же базового класса (а также партиалам) находиться в одном файле? В этом случае все перестановки класса Operation
будут находиться в Operation.cs.