Classe Personaggio program3

c
ciagliangelo (480 points)
1 5 8
asked Jan 15, 2019 in HW3bis by ciagliangelo (480 points)
Non riesco a capire nel costruttore della classe Personaggio cosa bisogna fare con il secondo parametro casate
259 views

1 Answer

angelo.spognardi (4680 points)
37 62 96
answered Jan 15, 2019 by angelo.spognardi (4,680 points)
Il secondo parametro è il cataolo_casate. Quando crei un nuovo personaggio, può darsi che questo personaggio appartenga ad una casata: in quel caso devi aggiungere il personaggio all'istanza Casata corrispondente oppure, se questa non esiste, devi creare una nuova istanza di Casata in cui aggiungere il personaggio e devi aggiungere tale istanza al catalogo_casate preso in input.
f.cocci (650 points)
1 13 17
commented Mar 14, 2019 by f.cocci (650 points)
Una domanda banale ma il dizionario corrispondente al catalogo casate come lo estraggo da json?
andrea.sterbini (172780 points)
513 935 1789
commented Mar 16, 2019 by andrea.sterbini (172,780 points)
Inizialmente viene passato un dizionario vuoto.

Mano a mano che leggi i personaggi dal JSON, ne ricavi la Casata e se non è già presente la istanzi e la aggiungi al dizionario delle casate
f.cocci (650 points)
1 13 17
commented Apr 3, 2019 by f.cocci (650 points)
Salve Prof, scusi il ritardo nella risposta ma mi sono buttato a capofitto sull'HW 4-BIS che mi ha rubato un sacco di tempo.

Mi e' chiaro come procedere col catalogo_casate.

Ho notato che leggendo il file json abbiamo charactersName che hanno lo stesso valore ma con attributi differenti.

Come dobbiamo comportarci in questo caso?

Io ho capito che il catalogo_personaggi  deve contenere un'istanza unica per ciascun characterName.

Devo fare una sorta di join degli attributi che riferiscono allo stesso characterName?

Grazie, F.
andrea.sterbini (172780 points)
513 935 1789
commented Apr 3, 2019 by andrea.sterbini (172,780 points)
Sento Spognardi che ha scritto l'esercizio e ti faccio sapere
g
gianluca (1270 points)
1 12 19
commented Apr 4, 2019 by gianluca (1,270 points)
edited Apr 4, 2019 by gianluca
scusate ma nel caso in cui un personaggio non appartiene a nessuna casata ,il parametro casata della classe personaggio sarà una la lista vuota?
f.cocci (650 points)
1 13 17
commented Apr 4, 2019 by f.cocci (650 points)
"Se la voce del dizionario di un personaggio non ha qualche attributo di
quelli previsti nella classe, tale attributo viene inizializzato a None."

Io l'ho valorizzato a None interpretando alla lettera quanto scritto nella traccia.
g
gianluca (1270 points)
1 12 19
commented Apr 4, 2019 by gianluca (1,270 points)
comunque non mi passano i test_10_new_personaggio in nessuno dei due modi a te passano mettendo None ? ho quest errore : "L'attributo casata del personaggio non è di tipo lista"
andrea.sterbini (172780 points)
513 935 1789
commented Apr 4, 2019 by andrea.sterbini (172,780 points)
dal che se ne dovrebbe dedurre che va messa una lista vuota ... provi?
angelo.spognardi (4680 points)
37 62 96
commented Apr 4, 2019 by angelo.spognardi (4,680 points)

Come abbiamo già scritto in un'altra risposta, ci sono diversi esempi di personaggi minori, senza casata, che hanno lo stesso charactername e diversi actors: in quei casi basta che ci sia almeno un personaggio con quel charactername, NON dovete creare più characters con lo stesso name nel catalogo. Ai fini dell'esercizio, non c'è  preferenza fra i tre diversi personaggi. L'importante è l'univocità dei personaggi e la correttezza dei link fra i vari oggetti.