Técnicas de programación de Ruby: manipulación de objetos simple pero no tan simple
Quiero crear un objeto, digamos un pastel.
class Pie
def initialize(name, flavor)
@name = name
@flavor = flavor
end
end
Pero un pastel se puede dividir en 8 piezas, la mitad o solo un pastel entero. En aras de la discusión, me gustaría saber cómo podría dar a cada objeto Pie un precio por 1/8, 1/4 o por todo. Podría hacer esto haciendo:
class Pie
def initialize(name, flavor, price_all, price_half, price_piece)
@name = name
@flavor = flavor
@price_all = price_all
@price_half = price_half
@price_piece = price_piece
end
end
Pero ahora, si creara quince objetos Pie, y sacara al azar algunas piezas en algún lugar usando un método como
getPieceOfPie(pie_name)
¿Cómo podría generar el valor de todos los pasteles disponibles que son enteros y las piezas restantes? Eventualmente usando un método como:
myCurrentInventoryHas(pie_name)
# output: 2 whole strawberry pies and 7 pieces.
Lo sé, soy un Ruby nuby. Gracias por sus respuestas, comentarios y ayuda!