wiki:Variante1

Version 5 (modified by gnappo, 18 years ago) (diff)

--

Variante 1

Operazioni estendibili

Note varie

La nostra Clone() e' superficiale, perche' dovrebbe essere soddisfacente per la maggior parte dei clienti, e perche' permette un certo risparmio di memoria. Da menzionarsi in documentazione.

20060724-1715
In realta' implementare la Clone() per i prodotti base non e' necessaria giacche' la factory istanzia in maniera corretta tali prodotti. Tale funzione diventa invece _indispensabile_ per chi vuole aggiungere nuovi prodotti a run-time per una successiva creazione. Il prof. Solmi ha adottato una soluzione abbastanza elegante: ha definito una superclasse astratta dove clone solleva eccezione di default. Chi vorra' aggiungere nuovi prodotti sara' obbligato a ridefinirsi tale metodo per non incorrere in eccezioni.

20060725-1559
Si potrebbero tipizzare le liste di espressioni attualmente campi di istanza di alcune SchemeExpression?. In tal modo non avremmo necessita' di cast (generici docet).