Ho scritto una classe singleton standalone (scaffold) stasera che funge da facciata per poche altre classi, tra cui una classe template e una classe view. Modelli e viste sono entrambi nominati e le istanze di ciascuno sono memorizzati nell'oggetto scaffold. I modelli possono contenere viste e le viste possono contenere altre viste. Un modello e le sue viste contenute vengono visualizzate quando:
scaffold->render('template_name')
Rendere un'impalcatura un Singleton mi è sembrata una buona idea, perché:
- Voglio controllare quando e come viene costruito l'oggetto
- Voglio solo un'istanza (la GUI verrà renderizzata una sola volta, indipendentemente dal modello che viene renderizzato)
- Tutto lo stato può essere facilmente rilasciato dalla classe scaffold (se, per ragioni di test o altro, volevo)
Questo sembra un caso d'uso accettabile? In caso contrario, quali considerazioni di progettazione specifiche sto trascurando?
Nessuna guerra religiosa, per favore. Non ho incluso la lingua perché spero in una considerazione agnostica della lingua, ma dirò:
- Linguaggio di scripting
- Filettato singolo