Assume you have a Singleton
Constants class, instance of which you'd like to use throughout your application.
In someClass
, therefore we can reference [Constants instance] someCleverConstant];
Typing this gets old really quick and it would be nice to get a shortcut to the instance.
- In
someClass
, we can declare @property (nonatomic, weak, readonly) Constants *constants;
- And a getter to the instance
-(Constants*) constants {
if (constants == nil)
constants = [Constants instance];
return constants;
}
This way in someClass, therefore we can reference constants.someCleverConstant;
instead
A few questions on this:
- Is what i described a reasonable approach?
- Is it correct to declare a property
weak
?
- Is there any performance concerns with what i have described? Would it actually be better to call instance directly?
- Consider a situation where you have 20 classes, each needing it's own pointer to Constants instance. Would this approach work then?
Thank you for your time.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…