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.