Continuación...
Para que nuestro ticket pueda operar de forma adecuada se necesitan algunas declaraciones para uso interno de la clase:
Los errores se exponen con una propiedad:
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.REMOVE.- Debe realizar las tareas de eliminar un objeto de la colección.
FIRST.- Nos debe regresar el primer objeto de la colección.
NEXT.- Debe moverse entre los objetos en la colección, de acuerdo a una posición relativa
isLast.- Esta propiedad nos indica cuando hemos llegado al final de la colección.
ITEM.- Nos debe regresar un objeto específico, de acuerdo a un identificador único.
CONCEPTOS.- Este método con una sobrecarga, nos permite obtener los conceptos, ya sea un conjunto de ellos o todos.
SUBTOTAL y TOTAL.- Deben ser implementados según sea la lógica del cálculo del ticket, en el ejemplo se limita a sumar.
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.
La implementación de los métodos del IEnumerator es:
Para probarlo creamos una aplicación de consola y agregamos el siguiente código:
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