Chapter 10. Interface Builder

Interface Builder is a graphical user interface editor and the first of the specialized editors included in Xcode. Interface Builder and Project Builder (also known as Xcode) trace their lineage all the way back to NeXT, where they were originally conceived. The two work hand in glove, and can essentially be considered a single tool.

Interface Builder was originally designed for, and with, Objective-C. Much of the "magic" of Interface Builder is possible thanks to the dynamic nature of the Objective-C language. After being brought into the Macintosh-development fold, Interface Builder's role has expanded to embrace the C/C++, Java, and AppleScript languages as well.

NIB Files

Although this book isn't about Cocoa or Carbon programming, it's hard to discuss what Interface Builder does without a basic grounding in the technology that lets it work. Simply put, Interface Builder edits NIB files. A NIB file defines the placement, organization, properties, and relationships of objects like menus, windows, text, and buttons.

Note

NIB originally stood for NeXT Interface Builder, but Apple has officially rechristened it Interface Builder archive.

Unlike program source files, NIB files are not compiled. They are read at execution time by the application, which uses the information in the NIB file to create the objects or structures that will embody the interface you designed in Interface Builder. There are two very important concepts here. The first is that NIB files ...

Get Beginning Xcode® now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.