Técnicas de programação Ruby: manipulação de objetos simples, mas não tão simples
Eu quero criar um objeto, digamos uma torta.
class Pie
def initialize(name, flavor)
@name = name
@flavor = flavor
end
end
Mas uma torta pode ser dividida em 8 pedaços, meio ou apenas uma torta inteira. Por uma questão de argumento, eu gostaria de saber como eu poderia dar a cada objeto Torta um preço por 1/8, 1/4 ou por todo. Eu poderia fazer isso fazendo:
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
Mas agora, se eu criar quinze objetos Torta e retirar algumas peças aleatoriamente em algum lugar, usando um método como
getPieceOfPie(pie_name)
Como eu seria capaz de gerar o valor de todas as tortas disponíveis que são inteiras e as peças restantes? Eventualmente, usando um método como:
myCurrentInventoryHas(pie_name)
# output: 2 whole strawberry pies and 7 pieces.
Eu sei, sou um Ruby Nuby. Obrigado por suas respostas, comentários e ajuda!