KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
It seems a lot of Objective-C code is using Singleton nowadays. While a lot of people complaining about Singleton, e.g. Google ( Where Have All the Singletons Gone? ), their fellow engineers also use it anyway: http://code.google.com/mobile/analytics/docs/iphone/ I know we had some answers in Stack Overflow already but they are not totally specific to Objective-C as a dynamic language: Objective C has categories, while many other languages do not. So what is your opinion? Do you still use Singleton? If so, how do you make your app more testable? Updated : I think we need to use codes as example for more concrete discussion, so much discussions on SO are theory based without a single line of code Let's use the Google Analytics iOS SDK as an example: // Initialization [[GANTracker sharedTracker] startTrackerWithAccountID:@"UA-0000000-1" dispatchPeriod:kGANDispatchPeriodSec delegate:nil]; // Track page view [[GANTracker sharedTracker] trackPageview:@"/app_entry_point" withError:&error]; The beauty of the above code is once you have initialized using the method " startTrackerWithAccountID ", you can run method " trackPageview " throughout out your apps without passing through configurations. If you think Singleton is bad, can you improve the above code? Much thanked for your input, have a happy Friday.
Tags (comma-separated)
Save Edits
Cancel