RE: Guidelines for NIB usage
RE: Guidelines for NIB usage
- Subject: RE: Guidelines for NIB usage
- From: "Kevin Hoffman" <email@hidden>
- Date: Wed, 25 Jul 2007 13:54:11 -0400
- Thread-topic: Guidelines for NIB usage
Thanks for the info. I think that actually makes a lot of sense. As a
.NET guy, I was forgetting about the fact that when you open up a NIB,
you "un-freeze-dry" (if that's not a word, it should be!) everything
contained in it. By doing what you said, I can keep seldom-used stuff
(or specialized stuff from alternate app workflows) from consuming
resources needlessly.
With .NET you have to manually instantiate each window, but your entire
Assembly is loaded into memory at app startup time anyway so deferring
the instantiation isn't really gaining you much.
-----Original Message-----
From: I. Savant [mailto:email@hidden]
Sent: Wednesday, July 25, 2007 1:51 PM
To: Kevin Hoffman
Cc: email@hidden
Subject: Re: Guidelines for NIB usage
I don't know off-hand that there's necessarily an official guideline
(because I haven't looked), but in general, I usually place
seldom-used UI in their own nib. A rules-editor, for example, may go
many app launches between uses, so there's no need to place it in the
main UI's NIB since you're needlessly un-freeze-drying (is that a
word?) UI that you won't even use most of the time.
The same can be said for a Preferences window - I've seen many
developers put this in the MainMenu.nib, which is perfectly fine
except that your preferences window and all its controls are getting
created and wired up at launch time. How often do you think your users
will actually *use* the preferences window? Hopefully not often or
your UI design is questionable. ;-) Best to put Preferences UI in its
own NIB.
My US $0.02, anyway ...
--
I.S.
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden