История имеет значение. Обобщения не всегда существовали, поэтому вы можете столкнуться с классами и API, которые были разработаны до появления обобщения.
Кроме того, целевая аудитория имеет значение. Некоторые функции нацелены на аудиторию разработчиков, у которых могут быть проблемы с пониманием обобщений :
Обмен : API-интерфейсы, использующие некоторые передовые
Особенности Generics могут быть слишком
трудно использовать для некоторых разработчиков.
Понятие дженериков не широко
понял, в некоторых случаях синтаксис
могут создавать проблемы, и как любой большой
Новая функция, Generics может представлять
значительная кривая обучения для некоторых
разработчики начального уровня.
Да, цитата за 2004 год, но некоторые, если не большинство .Net API, которые вы используете сегодня, вышли в 2005 году, поэтому цитата на самом деле очень актуальна.