ErgastiAlex / Appunti

1 stars 1 forks source link

TDE - 4 febbraio 2020 #2

Open chiara-camilla-rambaldi-migliore opened 3 years ago

chiara-camilla-rambaldi-migliore commented 3 years ago

Nell'esercizio 3 chiede quali design pattern useresti. Vedendo la domanda al plurale ho pensato che oltre al decorator si potrebbe fare un abstract factory per tutte le miriadi di accessori che elenca, cosa ne pensi?

chiara-camilla-rambaldi-migliore commented 3 years ago

Nell'esercizio 5 temo che tu abbia letto male la riga 2 "if (x>=0 && y>0)" e anzichè "y>0" tu abbia scritto nel flowchart e nei test di conseguenza "y>=0"

ErgastiAlex commented 3 years ago

Nell'esercizio 3 chiede quali design pattern useresti. Vedendo la domanda al plurale ho pensato che oltre al decorator si potrebbe fare un abstract factory per tutte le miriadi di accessori che elenca, cosa ne pensi?

Che violeresti il principio di open\closed ogni volta che vuoi aggiungere una nuova modifica. L'abstract factory serve quando hai degli oggetti predefiniti che possono essere generati di varie tipologie (Es: Mobili moderni, antichi, etc...) , qui la giacca è componibile runtime e dovresti ogni volta fare tutte le combinazioni

chiara-camilla-rambaldi-migliore commented 3 years ago

Non credo di aver capito, io intendo proprio di attaccare alla classe decoratore la factory

ErgastiAlex commented 3 years ago

"Non incrociare i flussi, Martin." Tralasciando la cit, non mischiare roba, l'abstract factory serve ad uno specifico problema di generazione classi, dove, un client può generare varie istanze a partire da una factory, il client non conosce la tipologia di factory, che è abstract e tramite il tipo dinamico genererà tutte istanze tra di loro coerenti (di nuovo, client che vuole generare dei mobili, ha una abstract factory che a runtime è FactoryModerna e genererà le sedie moderne, i mobili moderni, etc... Il pattern decorator invece fa proprio quello che è richiesto, ovvero la combinazione runtime e non scelta a priori (generare tutte le combinazioni sarebbe da pazzi) di vari oggetti