¿Hay alguna razón para utilizar Type
parámetros sobre los genéricos, es decir:parámetros de tipo frente a los genéricos
// this...
void Foo(Type T);
// ...over this.
void Foo<T>();
Me parece que los genéricos son mucho más útiles ya que proporcionan restricciones genéricas y con C# 4.0, contravariencia y covarianza, así como probablemente otras características que no conozco. Me parece que la forma genérica tiene todas las ventajas, y no tiene aspectos negativos que el primero tampoco comparte. Entonces, ¿hay algún caso donde usarías el primero en su lugar?
Es también mucho más caro y lento que ver con los genéricos (todas esas llamadas de reflexión no puede ser bonito) –
Absolutamente - aunque el dolor es normalmente más importante para mí :) –