Utilizzo di Dart nella parte client di un'app Web in cui ho un gestore applicazioni che contiene un List
di istanze dell'applicazione e riferimenti a servizi che vengono utilizzati da ciascuna applicazione come nel seguente diagramma
Come puoi vedere il gestore delle applicazioni è un singleton, così come i servizi che contiene che sono usati da tutte le app, per me ha senso perché
- Ho bisogno di avere solo un'istanza di ApplicationManager e ciascuna servizio
- Più facile accedere ai servizi senza la necessità di passare i riferimenti
- Devo conservare lo stato di ogni servizio
- Quasi tutti i servizi hanno una cache
Ho trovato dei modi per evitare di avere i servizi come singleton, rendendoli privati della libreria che è una caratteristica del dardo, quindi inizializzo i servizi solo una volta dal gestore applicazioni, ma non riesco a rendere privato il ApplicationsManager perché è al livello più alto della libreria, apprezzerei i tuoi pensieri per un modo per evitare di avere il gestore delle applicazioni come un singelton.