<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh">
	<id>https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Interface_Builder</id>
	<title>Interface Builder - 版本历史</title>
	<link rel="self" type="application/atom+xml" href="https://arolstar52-zhtest.hf.space/index.php?action=history&amp;feed=atom&amp;title=Interface_Builder"/>
	<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Interface_Builder&amp;action=history"/>
	<updated>2026-07-05T12:20:14Z</updated>
	<subtitle>在这个wiki上该页的修订历史</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://arolstar52-zhtest.hf.space/index.php?title=Interface_Builder&amp;diff=721116&amp;oldid=prev</id>
		<title>imported&gt;AromaTake：​/* 设计 */ 調整內部連結</title>
		<link rel="alternate" type="text/html" href="https://arolstar52-zhtest.hf.space/index.php?title=Interface_Builder&amp;diff=721116&amp;oldid=prev"/>
		<updated>2024-11-04T03:52:26Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;设计：​&lt;/span&gt; 調整內部連結&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新页面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{Infobox software&lt;br /&gt;
|logo = [[File:InterfaceBuilder.png|64px]]&lt;br /&gt;
|screenshot             = [[File:Interface Builder Screenshot.png|250px]]&lt;br /&gt;
|developer              = [[苹果公司]]&lt;br /&gt;
|latest_release_version = 3.2&lt;br /&gt;
|latest_release_date    = 2009&lt;br /&gt;
|perating_system       = [[Mac OS X]]&lt;br /&gt;
|genre                  = [[软件开发]]&lt;br /&gt;
|license                = [[专有软件]]&lt;br /&gt;
|website                = http://developer.apple.com/&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Interface Builder&amp;#039;&amp;#039;&amp;#039;（[[縮寫]]：&amp;#039;&amp;#039;&amp;#039;IB&amp;#039;&amp;#039;&amp;#039;），是用于[[苹果公司]][[Mac OS X]]操作系统的[[软件开发]]程序，是[[Xcode]]套件的一部分。[[Cocoa]]和[[Carbon (API)|Carbon]]开发者可以使用Interface Builder来创建和修改应用程序的[[图形用户界面]]。其数据以[[XML]]的形式被储存在&amp;#039;&amp;#039;&amp;#039;.xib&amp;#039;&amp;#039;&amp;#039;文件中。在过去，其数据则是储存在&amp;#039;&amp;#039;&amp;#039;.nib&amp;#039;&amp;#039;&amp;#039;文件中的，nib是“NeXT Interface Builder”的缩写。&lt;br /&gt;
&lt;br /&gt;
Interface Builder是继承自[[NeXTSTEP]]的开发套件的。[[OpenStep]]的开发也使用了IB的一个版本，而[[GNUStep]]则使用一个非常类似的，称为[[Gorm]]的工具。&lt;br /&gt;
&lt;br /&gt;
2008年3月27日，随着[[iPhone SDK]] Beta 2的发布，IB开始提供对[[iPhone]]程序开发的支持，允许开发者使用IB设计[[iOS]]应用程序的界面。&lt;br /&gt;
&lt;br /&gt;
== 历史 ==&lt;br /&gt;
1988年，IB作为NeXTSTEP 0.8的一部分首次出现。它最初由[[Jean-Marie Hullot]]所设计和编写，计划用于Lisp（即Expertelligence出品的ExperLisp）。它是首批可以使用鼠标放置[[按钮 (计算机)|按钮]]，[[选单]]，[[视窗]]等[[控件]]的商业软件之一。&lt;br /&gt;
&lt;br /&gt;
== 设计 ==&lt;br /&gt;
IB向[[Objective-C]]开发者提供了包含一系列用户界面对象的工具箱，这些对象包括[[文本框]]，数据表格，[[滚动条]]，[[環境選單|弹出式菜单]]等控件。IB的工具箱是可扩展的，也就是说，所有开发者都可以开发新的对象，并将其加入IB的工具箱中。&lt;br /&gt;
&lt;br /&gt;
开发者只需要从工具箱中简单的向窗口或菜单中拖拽控件即可完成界面的设计。然后，用连线将控件可以提供的“动作”（Action）、控件对象分别和应用程序代码中对象“方法”（Method）、对象“接口”（Outlet）连接起来，就完成了整个创建工作。与其它{{le|图形用户界面设计器|Graphical user interface builder}}，例如[[Microsoft Visual Studio]]相比，这样的过程减小了[[MVC模式]]中控制器和视图两层的耦合，提高了代码质量。&lt;br /&gt;
&lt;br /&gt;
在代码中，使用&amp;lt;code&amp;gt;IBAction&amp;lt;/code&amp;gt;标记接受动作的方法，而用&amp;lt;code&amp;gt;IBOutlet&amp;lt;/code&amp;gt;标记对象接口&amp;lt;ref&amp;gt;[http://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/IB_UserGuide/IB_UserGuide.pdf Interface Builder User Guide] {{Wayback|url=http://developer.apple.com/library/mac/documentation/DeveloperTools/Conceptual/IB_UserGuide/IB_UserGuide.pdf |date=20110303212027 }}（PDF）&amp;lt;/ref&amp;gt;。&lt;br /&gt;
&lt;br /&gt;
IB将应用程序界面保存为[[捆绑 (计算机)|捆绑]]，其中包含了界面对象及其与应用程序的关系。这些对象被[[序列化]]为[[XML]]文件或[[NeXT]]风格的[[属性列表文件]]，扩展名为&amp;lt;tt&amp;gt;.nib&amp;lt;/tt&amp;gt;。在应用程序运行时，对应的NIB对象调入内存，与其应用程序的二进制代码联系起来。与绝大多数其余GUI设计系统不同，IB不是生成代码以在运行时产生界面（如[[Glade]]，{{le|CodeGear}}的[[C++ Builder]]所做的），而是采用与代码无关的机制，通常称为&amp;#039;&amp;#039;freeze dried&amp;#039;&amp;#039;。从IB 3.0开始，加入了一种新的文件格式，其扩展名为&amp;lt;tt&amp;gt;.xib&amp;lt;/tt&amp;gt;。这种格式与原有的格式功能相同，但其为单独文件而非捆绑，以便于[[版本控制]]系统的运作，以及类似[[diff]]的工具的处理。&lt;br /&gt;
&lt;br /&gt;
==未来发展==&lt;br /&gt;
2010年6月的[[WWDC]]上，苹果宣布在Xcode4中会将IB和Xcode整合在一起，即在Xcode中直接提供编辑图形界面的功能。这意味着随着Xcode 4的发布，IB在[[Mac OS X]]中将不再作为单独的程序提供&amp;lt;ref&amp;gt;{{cite web |url=http://www.macrumors.com/2010/06/08/wwdc-software-notes-safari-5-xcode-4-itunes-9-2/ |title=WWDC Software Notes: Safari 5, Xcode 4, iTunes 9.2 |publisher=Mac Rumors |date=2010-06-08 |accessdate=2010-06-21 |archive-date=2020-10-25 |archive-url=https://web.archive.org/web/20201025051309/https://www.macrumors.com/2010/06/08/wwdc-software-notes-safari-5-xcode-4-itunes-9-2/ |dead-url=no }}&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;{{cite web|url = http://developer.apple.com/technologies/tools/whats-new.html|title = XCode 4, whats new|accessdate = 2010-10-10|archive-date = 2015-03-25|archive-url = https://web.archive.org/web/20150325023052/https://developer.apple.com/technologies/tools/whats-new.html|dead-url = no}}&amp;lt;/ref&amp;gt;。&lt;br /&gt;
&lt;br /&gt;
== 参考文献 ==&lt;br /&gt;
{{Reflist}}&lt;br /&gt;
&lt;br /&gt;
== 外部链接 ==&lt;br /&gt;
* [http://developer.apple.com/tools/interfacebuilder.html Apple&amp;#039;s Interface Builder description] {{Wayback|url=http://developer.apple.com/tools/interfacebuilder.html |date=20110823094020 }} for Cocoa and Carbon development&lt;br /&gt;
* [https://web.archive.org/web/20050427175754/http://docs.sun.com/app/docs/doc/802-2110/6i63kq4sf?a=view Sun&amp;#039;s Interface Builder documentation] for OpenStep development&lt;br /&gt;
* [http://developer.apple.com/legacy/mac/library/documentation/Carbon/Conceptual/UnarchivingIOwithIBS/ibs_intro/IBSIntro.html Apple&amp;#039;s Nib file documentation] {{Wayback|url=http://developer.apple.com/legacy/mac/library/documentation/Carbon/Conceptual/UnarchivingIOwithIBS/ibs_intro/IBSIntro.html |date=20121005174438 }}&lt;br /&gt;
&lt;br /&gt;
== 参见 ==&lt;br /&gt;
* [[Xcode]]&lt;br /&gt;
&lt;br /&gt;
{{-}}&lt;br /&gt;
{{Apple software}}&lt;br /&gt;
{{Mac OS X}}&lt;br /&gt;
&lt;br /&gt;
[[Category:NeXT]]&lt;br /&gt;
[[Category:图形用户界面设计器]]&lt;br /&gt;
[[Category:MacOS軟體]]&lt;br /&gt;
[[Category:MacOS開發]]&lt;/div&gt;</summary>
		<author><name>imported&gt;AromaTake</name></author>
	</entry>
</feed>