Sto provando a modellare i personaggi di nWoD per un gioco di ruolo in un programma di creazione di personaggi. Il punto cruciale è che voglio supportare anche il salvataggio e il caricamento dai documenti yaml.
Un aspetto del personaggio è il loro insieme di abilità. Le abilità sono suddivise in esattamente tre "tipi": mentale, fisico e sociale. Ogni tipo ha una lista di abilità sotto se. Il mio Yaml ha questo aspetto:
PHYSICAL:
Athletics: 0
Brawl: 3
MENTAL:
Academics: 2
Computers
Il mio pensiero iniziale era di usare un multimap di qualche tipo, e avere il tipo di abilità come Enum, e la chiave per la mia mappa. Ogni Abilità è un elemento della collezione che supporta la multimap.
Tuttavia, ho faticato per far funzionare lo yaml . Spiegando questo a un collega al di fuori del lavoro, hanno detto che probabilmente questo era un segno di odore di codice, e non l'ha mai visto usare "bene".
Le multiMaps sono davvero un codice odore? In caso affermativo, quali strutture di dati alternative si adatterebbero ai miei obiettivi?