Busqueda local

Loading

miércoles, 23 de febrero de 2011

Iterator Pattern II

Este post es la continuación de uno previo, puedes leerlo aquí.
Continuación...
Para que nuestro ticket pueda operar de forma adecuada se necesitan algunas declaraciones para uso interno de la clase:
it1
Los errores se exponen con una propiedad:
it2
Explicación del objetivo de cada Método o Propiedad de la interface de Ticket.
ADD.- Debe encargarse de agregar el objeto proporcionado a la colección.
it3
REMOVE.- Debe realizar las tareas de eliminar un objeto de la colección.
it4
FIRST.- Nos debe regresar el primer objeto de la colección.
it5
NEXT.- Debe moverse entre los objetos en la colección, de acuerdo a una posición relativa
it6
isLast.- Esta propiedad nos indica cuando hemos llegado al final de la colección.
it7
ITEM.- Nos debe regresar un objeto específico, de acuerdo a un identificador único.
it8
CONCEPTOS.- Este método con una sobrecarga, nos permite obtener los conceptos, ya sea un conjunto de ellos o todos.
it9
SUBTOTAL y TOTAL.- Deben ser implementados según sea la lógica del cálculo del ticket, en el ejemplo se limita a sumar.
it10
STEP.- Esta propiedad le permite a quien use la clase, cambiar el número de elementos que se debe saltar a recorrer la colección, el valor por default es 1.
step
La implementación de los métodos del IEnumerator es:
it11
Para probarlo creamos una aplicación de consola y agregamos el siguiente código:
iteratortetser
Bien, este ha sido el post más extenso que he redactado, sin embargo creo que podemos ver en un ejemplo muy sencillo, como combinar patrones para escribir código.
Espero que les parezca interesante, como a mí.

No hay comentarios:

Publicar un comentario