Chiedo in termini di classi di costo elevato, con un motore di particelle come esempio.
Ho letto da qualche parte che un'istanza di una classe con un costo elevato da inizializzare, come un gestore di particelle, dovrebbe avere le sue variabili di stato alterate in fase di esecuzione piuttosto che reinizializzare il gestore di particelle con nuovi dati ogni volta che viene utilizzato in un altro modo.
Il gestore di particelle creerebbe forse migliaia di istanze di particelle durante l'inizializzazione e poi le gestirà da quel momento in poi.
Per esempio, diciamo che questo gestore di particelle è usato per gestire le schegge in un'esplosione; e stai creando una simulazione ground zero per un attacco di artiglieria; quindi ci sono molte esplosioni.
Invece di più gestori per ogni esplosione, che è estremamente costoso, si alterano le variabili per ogni esplosione e si ha un insieme sequenziale di esplosioni sparpagliate usando lo stesso gestore e le stesse particelle.
Quindi chiedo: è bello riutilizzare un'istanza di classe in fase di esecuzione? O il precedente è solo un caso di super ottimizzazione?