Ho alcune domande generali su come modellare una serie di mercati e scommesse sulle scommesse al loro interno. Sto scrivendo in Ruby ma alla fine è agnostico verso quale lingua voglio usare.
Ho un concetto di "giochi", ad esempio un campionato di calcio. Mentre la lega è in corso, le persone possono piazzare vari tipi di scommesse. Una scommessa potrebbe essere il vincitore del campionato, o potrebbero essere i primi tre vincitori in qualsiasi ordine. O i primi tre vincitori in ordine. Questo è chiamato "mercato".
All'interno di un gioco ho anche dei partecipanti. Queste sono le squadre che compongono il campionato.
Una scommessa è composta da uno o più partecipanti, l'ordine di questi partecipanti è importante più un importo. È memorizzato sul mercato.
La mia domanda è: come devo organizzarmi? Al momento ho tipi di mercato (ad esempio Win) che ereditano da una classe di mercato di base.
La classe base che sto usando assomiglia a questa:
class Base
def self.make(game, market_name)
puts Kernel.const_get("MatchMaker::Markets::#{market_name}")
end
end
La funzione make è un metodo factory per generare classi di vincite in base a una stringa passata con il nome fuori dal tipo di scommessa.
Questa generazione sembra un po 'goffa al momento, e sono un po' preoccupato che potrebbe causare ulteriori problemi in pista.
Mi rendo conto che questa domanda è piuttosto sconclusionata e non ha una risposta chiara. Mi interessano di più le idee di altre persone su come farebbero per mettere insieme qualcosa del genere.