La mia comprensione di questo è che i pool di oggetti sono utili quando vogliamo lavorare con un oggetto, ma vogliamo usarne uno che sia già stato istanziato. È come un libro di biblioteca: controlli un libro e lo restituisci quando hai finito di leggerlo.
Tuttavia, faccio fatica a vedere come questo modello di design è usato nella vita reale. Come programmatore, non ho mai visto una situazione in cui avrei dovuto controllare un oggetto anziché crearne uno nuovo, passarlo come argomento o definire una variabile singleton contenente l'oggetto.