What modification should I use?
Is this a good idea?
I notice that – (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil is never really called
The purpose is Easier debugging. Ensuring that forms that should only have one form indeed has only one form.
There are many purposes actually.
I’m not sure it’s a good idea to use a singleton in your situation. But an easy way to implement it is through a macro, check this article: http://cocoawithlove.com/2008/11/singletons-appdelegates-and-top-level.html