Sobre métodos de instanciación y conveniencia perezosa

Suponga que tiene unSingleton Clase de constantes, instancia que le gustaría usar en toda su aplicación.

InsomeClass, por lo tanto podemos hacer referencia a[Constants instance] someCleverConstant];

Escribir esto envejece muy rápido y sería bueno tener un acceso directo a la instancia.

InsomeClass, podemos declarar@property (nonatomic, weak, readonly) Constants *constants;Y un captador de la instancia
-(Constants*) constants {
  if (constants == nil) 
    constants = [Constants instance];
  return constants;
}

De esta manera en someClass, por lo tanto, podemos hacer referencia aconstants.someCleverConstant; en lugar de

Algunas preguntas sobre esto:

Es lo que describí un enfoque razonabl ¿Es correcto declarar una propiedadweak? ¿Hay algún problema de rendimiento con lo que he descrito? ¿Sería mejor llamar a la instancia directamente? Considere una situación en la que tiene 20 clases, cada una necesita su propio puntero a la instancia de Constantes. ¿Funcionaría este enfoque entonces?

Gracias por tu tiempo

Respuestas a la pregunta(8)

Su respuesta a la pregunta