【Xib】
Interface Builder 是用来组织创建应用程序的可视部分(用户界面)。使用它您可以拖放一些定义好的组件(UILabel、UIButton等)到应用程序窗口中,然后设置它们的属性,和应用程序对象建立连接。当您完成了创建视图后将会以(Mac OS工程为.nib,iOS工程为.xib)文件的形式保存起来。
其实xib是从iOS SDK初次面世开始就是捆绑在开发者工具套装内的内容了,而到了Xcode 4之后被直接集成到了Xcode中成为了IDE的一部分。xib文件之前一大被诟病的问题是文件内容过于复杂,可读性很差,在Xcode 5中Apple大幅简化了xib文件的格式,使其变得易读易维护。
【Storyboard】故事版
iOS5之后Apple提供了一种全新的方式来制作UI,那就是StoryBoard。简单理解来说,可以把StoryBoard看做是一组ViewController对应的xib,以及它们之间的转换方式的集合。在StoryBoard中不仅可以看到每个ViewController的布局样式,也可以明确地知道各个ViewController之间的转换关系。相对于单个的xib,其代码需求更少,也由于集合了各个xib,使得对于界面的理解和修改的速度也得到了更大提升。
在Xcode5之后,StoryBoard已经成为新建项目的默认配置,这也代表了Apple对开发者的建议和未来的方向。WWDC2013的各个Sample Code中也基本都使用了StoryBoard来进行演示。可以预见到,之后Apple必定会在这方面进行继续强化,而反之纯代码或者单个xib的方式很可能不会再得到增强。