Em instanciação preguiçosa e métodos de conveniência
Suponha que você tenha umSingleton
Classe Constants, instância da qual você gostaria de usar em todo o aplicativ
DentrosomeClass
, portanto, podemos referenciar[Constants instance] someCleverConstant];
Digitar isso fica velho muito rápido e seria bom obter um atalho para a instânci
DentrosomeClass
, podemos declarar@property (nonatomic, weak, readonly) Constants *constants;
E um getter para a instância-(Constants*) constants {
if (constants == nil)
constants = [Constants instance];
return constants;
}
Desta forma, em someClass, portanto, podemos referenciarconstants.someCleverConstant;
em vez d
Algumas perguntas sobre isso:
o que descrevi uma abordagem razoáveÉ correto declarar uma propriedadeweak
? Existe algum problema de desempenho com o que descrevi? Seria realmente melhor chamar instância diretamente? Considere uma situação em que você tenha 20 classes, cada uma precisando de seu próprio ponteiro para a instância de Constantes. Essa abordagem funcionaria então?Obrigado pelo seu tempo.