veo que este tema ha sido abandonado hace más de un año, pero aún así me gustaría compartir mi punto de vista sobre esta convención.
En primer lugar, tener múltiples clases que tengan el mismo nombre pero solo difieran en la cantidad de parámetros de tipo no siempre es un caso de compatibilidad con versiones anteriores. Seguramente, no lo ve muy a menudo, pero las nuevas clases de Action y Func de .NET se diseñaron de esta manera, y actualmente estoy implementando algo similar.
Para mayor claridad y distinguibilidad, uso la siguiente convención que sólo especifica el número de argumentos genéricos para un tipo dado:
- MyClass.cs
- MyClass.T1.cs
- MyClass.T2 .cs
De esta forma, mis nombres de archivo permanecen cortos y simples a la vez que comunican claramente el nombre de clase y la cantidad diferente de parámetros de tipo a costa de un simple punto extra (que es, en mi experiencia, una cosa comúnmente aceptada para hacer en un nombre de archivo y se ve mucho mejor que las comas y otros caracteres no alfanuméricos, pero esto es solo una cuestión de gusto, supongo).Poner los nombres (o acrónimos) de los parámetros de tipo simplemente alarga los nombres de los archivos, mientras que en este nivel no estoy realmente interesado en los nombres reales de los parámetros de tipo ...
Podría dar un ejemplo de una clase que tanto un tipo específico y genérico con el mismo nombre (que probablemente no es una idea fantástica para empezar?) El .NET no los tipos genéricos solo existen para compatibilidad con versiones anteriores. –
"¿Podría dar un ejemplo de una clase que tenga un tipo genérico y específico con el mismo nombre?": Usted mismo ha proporcionado una respuesta: ¡una biblioteca de clases que necesita compatibilidad con versiones anteriores! – Joe