Dear Cocoa-Dev,

// You should use IB whenever and wherever you can //

It's often the case that developers new to the platform think that they have to write their UI in code. Perhaps because UI design tools on other platforms doesn't work as well as they should? Please note that Cocoa developers use IB wherever they can, and only fall back to constructing their UI in code where they have to. This holds true for all types of Cocoa apps, from the very small to the very large. Interface Builder is not used only by beginner programmers, or for small projects, it's used by everyone and everywhere.

// IB doesn't do anything that you can't do in code //

Anything that can be done using IB and nib loading can be done programmatically at runtime. Creating your UI programmatically is always possible, it just takes more time and effort to both write and maintain that code. Note that the opposite isn't true (of course). There are some things that you can't do in IB, that you have to do programmatically.

// IB doesn't always work like other UI design tools //

If the use of inspector panels and drag operations seems strange, it's probably because you're new to Mac OS X. If you're surprised that you can't double-click to edit the action of a button, it's probably because you're new to the design patterns used heavily in Cocoa, in particular MVC. It's very likely that the fact that IB isn't a code generator has *nothing* to do with why it works differently from other UI design tools.


IB is awesome, but of course not perfect. Feedback from developers are always much appreciated:

        <http://developer.apple.com/bugreporter/>


j o a r


_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

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:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to