Estoy desarrollando una simulación simple con OpenGL y esta simulación tiene algunas constantes globales que el usuario cambia durante la ejecución de la simulación. Me gustaría saber si el patrón de diseño de Singleton es la mejor manera de trabajar como un "repositorio de configuración" de tiempo de ejecución temporalUsando un singleton para almacenar los parámetros de la aplicación global
Respuesta
Un singleton es probablemente la mejor opción si necesita mantener esta configuración realmente "global".
Sin embargo, para fines de simulación, consideraría si puede diseñar sus algoritmos para pasar una referencia a una instancia de configuración, en su lugar. Esto haría mucho más fácil almacenar configuraciones por simulación, y eventualmente le permitirá procesar simulaciones múltiples con configuraciones separadas al mismo tiempo, si los requisitos cambian.
A menudo, tratar de evitar el estado global es un mejor enfoque a largo plazo.
Creo que en el pasado he usado espacios de nombres para este propósito, no clases de singleton, sino esto debería funcionar también (probablemente incluso mejor).
Por supuesto, si desea poder cambiar la configuración sin recompilar, puede mover todo a un archivo de propiedades separado (o XML o YAML o CSV o lo que prefiera) y luego cargarlo al inicio de la aplicación arriba. Entonces necesitarías una clase "config" para almacenar todos los valores en un hashmap (o algo así).
- 1. Singleton con los parámetros
- 2. Singleton para la configuración de la aplicación
- 3. Recursos de la aplicación Silverlight para acceso global a un singleton
- 4. ¿Cuál es la diferencia entre todos los métodos estáticos y la aplicación de un patrón singleton?
- 5. Práctica recomendada para almacenar una instancia de singleton en la aplicación ASP.NET
- 6. ruby - crea singleton con parámetros?
- 7. global ADBannerView en la aplicación para iPhone
- 8. C++ singleton vs. objeto estático global
- 9. Dónde almacenar información global sensible como claves API en la aplicación de Android?
- 10. Almacenar la configuración de la aplicación qt usando QSettings
- 11. Obtener los parámetros de un atributo usando la Reflexión
- 12. Aplicación WPF usando una variable global
- 13. cómo puedo crear un objeto global singleton en rieles
- 14. Usando una variable estática para almacenar en caché los datos
- 15. Conjunto Nombre de la aplicación de los parámetros de MSBuild
- 16. ¿Cuál es la mejor manera de almacenar la configuración global de la aplicación en una aplicación de Rails?
- 17. Session vs singleton pattern
- 18. Uso de singleton en lugar de una instancia global estática
- 19. Android: la mejor manera de guardar los datos almacenados en la aplicación Singleton Class
- 20. Recomendar prácticas para almacenar la configuración transitoria de la aplicación
- 21. ¿Cómo almacenar los parámetros de configuración en SVN?
- 22. Definir un UncaughtExceptionHandler global para todos los hilos de mi aplicación
- 23. ¿Cómo puedo almacenar los parámetros de configuración de Java EE fuera de un EAR o WAR?
- 24. Configuración de la fuente global para una aplicación Java
- 25. aplicación parcial de los parámetros de tipo
- 26. node.js: forma estándar de almacenar la configuración de la aplicación?
- 27. Cómo almacenar los registros en un archivo txt usando android.util.log
- 28. Trabajando con un singleton global en Flask (WSGI), ¿tengo que preocuparme por las condiciones de carrera?
- 29. delegado para un objeto singleton
- 30. Vida útil de un Singleton