So che è difficile rispondere senza esempi, quindi sto cercando principi o linee guida generali qui. Sto pensando al mondo dei giochi e delle app per dispositivi mobili di piccole e medie dimensioni.
Ho letto alcune volte che il riutilizzo degli oggetti è una pietra miliare nella creazione di programmi efficienti. Quindi, in generale, mi sforzo di riutilizzare tutto il possibile. Ma, poi, mi sono reso conto che ogni oggetto che sto tenendo in giro deve esistere da qualche parte in memoria, quindi è iniziato a sembrare inefficiente . Ho pensato che sarebbe andato bene, purché non stia cercando di rendere gli aspetti visivi o uditivi degli oggetti. E ho temuto che la costruzione e la ricostruzione di questi oggetti sarebbe troppo costosa da eseguire ogni volta che voglio solo attivare la loro presenza.
Diciamo, ad esempio, che ho una GUI composta da 30 oggetti diversi che rappresentano ciascuno uno stato dello schermo: pulsanti, riquadri, testo, uno sfondo, forse alcuni componenti dell'interfaccia utente animati. Sembra più sensato inizializzare e deinizializzare questi oggetti, tenerli in memoria, ma disabilitarne il rendering, le animazioni, ecc.? O dovrei semplicemente distruggere queste cose e ricrearle?
Altri esempi di cose che tengo intorno potrebbero essere oggetti di gioco come personaggi non giocabili, armi, oggetti, ecc.