c# mongodb unity3d server photon

c# - Singleton para MongoDB



unity3d server (1)

¿Debo usar el patrón de singleton para MongoDB? Actualmente estoy construyendo un Servidor de Juego para el juego de Turnbase usando Photon Engine y MongoDB.

public sealed class GSEntities { #region Fields public IMongoClient Client; public IMongoDatabase Database; private static GSEntities _instance; private static readonly Object sync = new object(); public static GSEntities Instance { get { if (_instance == null) { lock (sync) { if (_instance == null) _instance = new GSEntities(); } } return _instance; } } }

Está bien o debería usar otro patrón como Repositorio?

Gracias por tu ayuda! :)


Está bien o debería usar otro patrón como Repositorio?

En general, debe usar patrones cuando los necesite . No cuando tienes tiempo, o parece genial o no duele.

Entonces pregúntate, ¿ necesitas un singleton? Mi conjetura es no. Esta podría ser una clase normal en la que solo tienes una instancia de.

¿ Necesitas un patrón de repositorio? Mi conjetura sería no tan bien. La descripción dice:

Las capas intermedias entre el dominio y las capas de mapeo de datos utilizan una interfaz tipo colección para acceder a objetos de dominio.

Solo tú puedes decidir. Nuevamente, implemente cuando sea necesario , no cuando lo desee u otros piensen que es genial.