ENUM y ANOTACIONES
ENUM y ANOTACIONES
ENUM y ANOTACIONES
NI
ING. ABEL EDMUNDO MARIN REYES
CONTENIDOS A SER
ABORDADOS
En los siguientes encuentros los temas que
estaremos viendo serán:
1. Tipo ENUM
2. Anotaciones
3. Anotaciones predefinidas
4. Declaración de anotaciones
5. Uso de anotaciones
“Programar no es fácil, pero es
un proceso en el que se aprende
más haciendo errores.”
—Chris Pine
01
TIPO ENUM
ENUM
ENUM (enumeración) es un tipo de
dato especial que permite definir un
conjunto de constantes con nombre.
Estas constantes están asociadas a
valores numéricos enteros por
defecto. Su uso mejora la legibilidad
del código al permitir trabajar con
valores simbólicos en lugar de
números.
ENUM SIMPLE (SIN VALORES EXPLÍCITOS)
cada miembro tiene un valor asignado automáticamente, comenzando desde 0 e incremente en 1
ENUM CON VALORES EXPLÍCITOS
Puedes asignar valores específicos a algunos o todos los miembros del ENUM
ENUM CON VALORES DESORDENADOS O NO SECUENCIALES
Puedes asignar valores que no sigan un orden secuencial
ENUM CON TIPO SUBYACENTE ESPECIFICADO
Por defecto, el tipo subyacente de un ENUM es int, pero puedes usar otros tipos enteros (byte, sbyte, short,
ushort, int, uint, long, ulong).
ENUM CON BANDERAS (FLAGS)
Los ENUM con el atributo [Flags] permiten combinar varios valores mediante operaciones bit a bit. Esto es útil
cuando un valor puede representar múltiples opciones o configuraciones simultáneamente.
02
ANOTACIONES
ANOTACIONES
Las anotaciones (annotations o
attributes) en C# son una manera
de agregar metadatos a las
declaraciones de clases, métodos,
propiedades, etc. Estos metadatos
pueden luego ser utilizados por el
compilador, el framework o el propio
código en tiempo de ejecución. C#
ofrece anotaciones predefinidas y
también te permite crear tus propias
anotaciones personalizadas.
03
ANOTACIONES PREDEFINIDAS
ANOTACIONES
PREDEFINIDAS
C# proporciona varias anotaciones
predefinidas que cubren un conjunto
amplio de funcionalidades. Estas
anotaciones son clases que heredan
de la clase base System.Attribute
y se utilizan para añadir información
adicional a los miembros del código.
[Obsolete]
Marca un método, clase o propiedad como obsoleto, avirtiendo al desarrollador que su uso no es recomendado, y
puede ser eliminado en el futuro.
[Serializable]
Indica que una clase puede ser serializada, lo que significa que sus objetos pueden ser convertidos en un formato
para almacenarse o transmitirse (por ejemplo, a un archivo o por la red)
[Conditional]
Permite la ejecución condicional de un método basado en si una constante de compilación está definida
04
DECLARACIÓN DE
ANOTACIONES
DECLARACIÓN DE ANOTACIONES
En C#, puedes declarar tus propias anotaciones o atributos personalizados creando una clase que herede de
System.Attribute
USO DE LA ANOTACIÓN PERSONALIZADA
Una vez definida la anotación personalizada, podemos usarla en clases o métodos para agregar metadatos.
05
USO DE ANOTACIONES
USO DE ANOTACIONES
El uso de las anotaciones en C# implica leerlas en tiempo de ejecución mediante reflexión. A continuación, te
muestro cómo obtener las anotaciones aplicadas a una clase y a un método