Genéricos en .NET Framework
Actualización: noviembre 2007
Los genéricos le permiten personalizar un método, clase, estructura o interfaz para el tipo de datos preciso sobre el que actúa. Por ejemplo, en lugar de utilizar la clase Hashtable, que permite que las claves y valores sean de cualquier tipo, puede usar la clase genérica Dictionary<TKey, TValue> y especificar el tipo permitido para la clave y el tipo permitido para el valor. Entre los beneficios de los genéricos se encuentran una mayor posibilidad de reutilización del código y la seguridad de tipos.
En .NET Framework se proporcionan varias clases de colección genéricas en los espacios de nombres System.Collections.Generic y System.Collections.ObjectModel. Las interfaces genéricas para implementar comparaciones de orden e igualdad se proporcionan en el espacio de nombres System, junto con los tipos de delegado genéricos para los controladores de eventos, conversiones y predicados de búsqueda.
Se ha agregado compatibilidad con genéricos a System.Reflection para examinar tipos y métodos genéricos, a System.Reflection.Emit para emitir ensamblados dinámicos que contienen tipos y métodos genéricos, y a System.CodeDom para generar gráficos de origen que incluyen genéricos.
Visual Basic, C# y Visual C++ proporcionan compatibilidad completa para definir y utilizar tipos genéricos. Common Language Runtime proporciona nuevos códigos de operación y prefijos para admitir tipos genéricos en el lenguaje intermedio de Microsoft (MSIL).
En esta sección
Información general sobre los genéricos de .NET Framework
Describe la característica de genéricos, las funciones que aporta a .NET Framework y la manera que en que se expone en Common Language Runtime.Colecciones genéricas en .NET Framework
Describe las clases de colección genéricas y otros tipos genéricos de .NET Framework.Delegados genéricos para manipular matrices y listas
Describe los delegados genéricos para las conversiones, predicados de búsqueda y acciones realizadas en los elementos de una matriz o colección.Interfaces genéricas
Describe las interfaces genéricas que proporcionan funciones comunes entre las familias de tipos genéricos.Ventajas y limitaciones de genéricos
Resume las ventajas y restricciones en el uso de genéricos.
Referencia
System.Collections.Generic
Cataloga la mayoría de los tipos de colección genérica proporcionados por .NET Framework, como las clases genéricas List<T> y Dictionary<TKey, TValue>.System.Collections.ObjectModel
Cataloga tipos de colección genéricos adicionales, como la clase genérica ReadOnlyCollection<T>, que son útiles para exponer modelos de objetos a los usuarios de sus clases.OpCodes
Se han agregado nuevos códigos de operación y prefijos para admitir los genéricos, entre los que se incluyen Stelem, Ldelem, Unbox_Any, Constrained y Readonly.
Secciones relacionadas
Tipos de colección utilizados normalmente
Proporciona información resumida sobre las características y escenarios de uso de los tipos de colección de .NET Framework, incluidos los tipos genéricos.Cuándo utilizar colecciones genéricas
Describe las reglas generales para determinar cuándo utilizar los tipos de colección genéricos.Reflexión y tipos genéricos
Explica cómo utilizar la reflexión para examinar tipos y métodos genéricos.Cómo: Definir un tipo genérico con Reflection Emit
Explica cómo generar ensamblados dinámicos que incluyen tipos y métodos genéricos.Tipos genéricos en Visual Basic
Describe la característica de genéricos para los usuarios de Visual Basic, e incluye temas del tipo Cómo... para utilizar y definir tipos genéricos.Introducción a los genéricos (Guía de programación de C#)
Proporciona información general sobre la definición y el uso de tipos genéricos para los usuarios de C#.Overview of Generics in Visual C++
Describe la característica de genéricos para los usuarios de C++, incluidas las diferencias entre genéricos y plantillas.