Swift
¿Qué es un Singleton?
El patrón de diseño singleton asegura que solo haya una instancia de una clase instanciada
Luego se comparten en todos los lugares donde deben usarse
Se utilizan comúnmente en las plataformas de Apple, p. Ej. UserDefaults, URLSession, FileManager
Propiedades estáticas
Las propiedades y métodos estáticos pertenecen a una clase o estructura, en lugar de una instancia, lo que significa que se comparten entre proyectos.
Se pueden utilizar en diferentes proyectos, siempre recuperando y guardando en el mismo archivo.
Define variables estáticas o constantes en swift anteponiendo static
Objeto singleton
La razón para adoptar el patrón singleton es el acceso global
Agregar un inicializador a la estructura deshabilita automáticamente el inicializador de miembro predeterminado
La forma más sencilla de crear un objeto singleton se parece a esta
Beneficios
Control de instancias: evitar que otros objetos creen instancias de sus propias capas del Singleton
Flexibilidad: acceder al singleton es intuitivo y transmite claramente que estamos tratando con un objeto singleton
Inconvenientes:
Transparencia: sacrificar la transparencia por la conveniencia
Complicaciones: con el tiempo, podría perder el rastro del objeto que accede al objeto singleton o terminar abusando del patrón, lo que genera complicaciones.