XCode 3.0 到 3.1 之间的 NIB->XIB 变化是怎么回事?当我阅读除了 .nib 文件之外什么都没有提到的教程时,我应该知道这个名称更改有什么区别吗?
4 回答
XIB 非常酷。它们基本上是一个未编译的 NIB(如果我没记错的话,是 XML 格式)
在构建过程中,它们被转换为 NIB 以部署在最终产品中。
据我了解,xib 文件是x ml n ib文件。xib 文件在构建应用程序时被编译成 nib。创建 xib 格式是因为 nib 文件不能很好地与版本控制配合(因为它们不是文本),而纯文本 xml 文件效果很好。
其他答案和链接解释了XIB 文件是什么,但没有说明具体的变化。
2007 年 Leopard(和 Xcode 3.0)引入了新的平面文件.xib格式,但我相信.nib仍然是默认格式,主要是为了与旧版本的 Xcode 和 OS X 兼容。在 Xcode 3.1 中,发生了转变以.xib作为首选格式。但是,大多数文档尚未更新,部分原因可能是因为从普通开发人员的角度来看,区别很小。
我绝对赞同 XIB 文件比 NIB 文件好得多的观点,尤其是在使用版本控制时。(平面文件比大多数工具中的目录包更容易管理。)
XIB文件(X ML接口B uilder)被引入 Xcode 是因为NIB文件(N xt接口Builder)不是那么用户/可编辑友好。XIB 以原始 XML 文档的格式设计,使其成为人类可读的源代码。尽管较旧的捆绑 NIB 文件可以编辑,但它们仍然比简单的 XIB 稍微复杂一些,它们包含多个文件,包括 XML XIB。现在大多数 NIB 都已编译,除了 Mac 之外的任何东西都无法读取,因此它可以读取它们。Apple 开始使用已编译的 NIB 文件,因为人们可以阅读和理解放入其他人程序的代码:o。Xcode 现在使用“ibtool”命令来编译 nib。如果您想了解有关已编译 Nib 的更多信息,请参阅我在这篇文章中的详细回答