Tabla de Contenido
0. Introducción1. Problema
2. Solución
3. Discusión Solución
4. Práctica: Código Fuente C#
5. Conclusiones
6. Glosario
7. Enlaces & Literatura
0. Introducción
Ya en
el artículo -Indizadores
en C#- hablé con detenimiento acerca de los indexers
en C# y su potencial para acceder a datos de una clase por medio de una
propiedad especificando un índice (basado en 0) de la ubicación del dato que
nos interesa. En esta receta voy a implementar este concepto como fórmula de
afianzamiento. ¡Manos a la obra!
1. Problema
Actualmente la implementación de los atributos (campos, como uds. prefieran) que corresponden con arreglos se acceden a través de un método de la siguiente forma:
public string ObtenerData(int indice)
{
return datos[indice];
}
public string ObtenerData(int indice)
{
return datos[indice];
}
2. Solución
Vamos a implementar un indexer personalizado para acceder a la data de los atributos de tipo arreglo en nuestras clases del modelo. En resumen este es el método de acceso y manipulación que se propone con indexer personalizados:
string[] palabras = "GitHub Gist permite crear fragmentos de código de forma eficiente.".Split();
public string this [int indicePalabra] // indexer
{
get
{
return palabras[indicePalabra];
}
set
{
palabras[indicePalabra] = value;
}
}
3. Discusión de la solución
En el artículo -Indizadores en C#- pueden consultar los detalles de implementación de indexer personalizados en C#. Ahí podrán interesantes ejemplos para comprender su uso y utilidad en el uso de propiedades que acceden y manipulan campos de tipo arreglo en una estructura personalizada (i.e., una clase).
4. Práctica: Código Fuente C#
Archivo ReporteTiempo.cs:
Compilación:
> Prueba de ejecución.
Compilación:
- csc /target:exe /out:ReporteTiempo.exe ReporteTiempo.cs
> Prueba de ejecución.
5. Conclusiones
Aprendimos acerca del uso de los indexers personalizados para acceder y manipular la data asociada a un atributo (o campo) de una clase; esto a través del uso de la sintaxis de acceso y manipulación de arreglos.
6. Glosario
- Arreglo
- Atributo
- Campo
- Indexer
- Propiedad
7. Enlaces & Literatura
[1]: Visual C# 2010 Recipes by Allen Jones and Adam Freeman. Copyright 2010 Allen Jones and Adam Freeman, 978-1-4302-2525-6.[2]: Indizadores en C# - http://ortizol.blogspot.com/2013/10/tabla-de-contenido-0_14.html
M
No hay comentarios:
Publicar un comentario
Envíe sus comentarios, dudas, sugerencias, críticas. Gracias.