Xcode

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Xcode
Xcode icon.png
Xcode4.png
Xcode 4.0 running on Mac OS X 10.6
Developer(s) Apple Inc.
Stable release 4.3 (4E109) / February 16, 2012; 7 days ago (2012-02-16)
Preview release 4.4 Developer Preview (4F90a) / February 16, 2012; 7 days ago (2012-02-16)
Operating system Mac OS X v10.3 (Version 1.x)
Mac OS X v10.4 (Version 2.x)
Mac OS X v10.5 (Versions 2.5, 3.0, 3.1)
Mac OS X v10.6 (Versions 3.2, 4.0, 4.1, 4.2)
Mac OS X v10.7 (Versions 4.1, 4.2, 4.3)
Mac OS X v10.8 (Version 4.4)
Type Integrated Development Environment (IDE)
License Proprietary
Website Apple – Xcode

Xcode is a suite of tools developed by Apple for developing software for Mac OS X and iOS, first released in 2003. The latest stable release is version 4.3, which is available on the Mac App Store free of charge for Mac OS X Lion users (requires an Apple ID).[1] Registered developers can download preview releases and previous versions of the suite through the Apple Developer website.[2]

Contents

[edit] Composition

The main application of the suite is the integrated development environment (IDE), also named Xcode. The Xcode suite also includes most of Apple's developer documentation, and built-in Interface Builder, an application used to construct graphical user interfaces.

The Xcode suite includes a modified version of the GNU Compiler Collection, and supports C, C++, Objective-C, Objective-C++, Java, AppleScript, Python and Ruby source code with a variety of programming models, including but not limited to Cocoa, Carbon, and Java. Third parties have added support for GNU Pascal,[3] Free Pascal,[4] Ada,[5] C#,[6] Perl,[7] Haskell,[8] and D. The Xcode suite uses the GNU Debugger as the back-end for its debugger.

[edit] 1.x series

Xcode 1.0 was released in fall 2003. Xcode 1.0 was based on Project Builder, but had an updated UI, ZeroLink, Fix & Continue, distributed build support, and Code Sense indexing.

The next significant release, Xcode 1.5, had better code completion and an improved debugger.

[edit] 2.x series

Xcode 2.0 was released with Mac OS X v10.4 "Tiger". It included the Quartz Composer visual programming language, better Code Sense indexing for Java, and Ant support. It also included the Apple Reference Library tool, which lets you search and read online documentation from Apple’s website and local documentation installed on your machine.

Xcode 2.1 could create universal binaries. It supported Shared Precompiled Headers, unit testing targets, conditional breakpoints, and watchpoints. It also had better dependency analysis.

[edit] 3.x series

Xcode 3.0 was released with Mac OS X v10.5 "Leopard". Notable changes since 2.1 include[9] the DTrace debugging tool (now called Instruments), refactoring support, context-sensitive documentation, and Objective-C 2.0 with garbage collection. It also supports Project Snapshots, which provide a basic form of version control; Message Bubbles, which show build errors debug values alongside code; and building four-architecture fat binaries (32 and 64-bit Intel and PowerPC).

Xcode 3.1 was an update release of the developer tools for Mac OS X, and was the same version included with the iPhone SDK. It could target non-Mac OS X platforms, including iPhone OS 2.0. It included the GCC 4.2 and LLVM GCC 4.2 compilers. Another new feature since Xcode 3.1 is that Xcode's SCM support now supports Subversion 1.5.

Xcode 3.2 was released with Mac OS X v10.6 "Snow Leopard" and will not install on any earlier version of Mac OS X. It supports static program analysis, among other features. It also drops official support for targeting versions earlier than iPhone OS 3.0. But it is still possible to target older versions, and the simulator supports iPhone OS 2.0 through 3.1. Also, Java support is "exiled" in 3.2 to the organizer.[10]

Xcode 3.2.6 is the last version that can be downloaded for free for users of Mac OS X v10.6 Downloading it requires a free registration at Apple's developer site (but a paid developer program membership is not required).

[edit] 4.x series

In June 2010 at the World Wide Developers Conference, Apple announced version 4 of Xcode during the Developer Tools State of the Union address. Version 4 of the developer tools consolidates the Xcode editing tools and Interface Builder into a single application, among other enhancements.[11][12] A GM seed was posted on February 4, 2011; although it was only available as a download to registered iOS/Mac Developer Program members, it was leaked on numerous download websites.[13] A second golden master seed was released to developers on March 3, 2011 in conjunction with the golden master seed of iOS 4.3. Apple released the final code for Xcode 4.0 on March 9, 2011. The software was made available for free to all registered members of the $99 per year Mac Developer program and the $99 per year iOS Developer program. It was also sold for $4.99 to non-members on the Mac App Store (no longer available). As of July 20, 2011 (the day of Mac OS X Lion's release), Xcode 4.1 was made available for free to all users of Mac OS X Lion on the Mac App Store. On August 29, 2011, Xcode 4.1 was made available for Mac OS X Snow Leopard for members of the paid or free Mac or iOS developer programs. On October 12, 2011, Xcode 4.2 was released concurrently with the release of iOS 5.0, it included many more and improved features like storyboarding and automatic correction.

Xcode 4.0 drops support for many older systems, including all PowerPC development as well as SDKs for Mac OS X 10.4 and 10.5, and all iOS SDKs older than 4.3. The deployment target can still be set to produce binaries for those older platforms, but for the Mac OS platforms one is then limited to creating x86 and x86_64 binaries.

Xcode 4.3 is distributed as a single application bundle, Xcode.app, installed from the Mac App Store. Xcode 4.3 reorganizes the Xcode menu to include development tools.

[edit] Major features

Among the features of the Xcode suite is the technology to distribute the building of source code over multiple computers. The original, now called Shared Workgroup Build, uses the Bonjour protocol to automatically discover computers providing compiler services, and the free software distcc. More recent versions of Xcode added a second system, called Dedicated Network Builds, which scales better to larger configurations.

Thanks to the Mach-O executable format, which allows for “fat binaries" containing code for multiple architectures, Xcode can build universal binaries which allow software to run on both PowerPC and Intel-based (x86) platforms. Furthermore, the compilers supplied with Xcode can build 32- and 64-bit applications for both architectures. Using the iOS SDK, Xcode can also be used to compile and debug applications for iOS that run on the ARM processor.

Xcode also includes Apple's WebObjects tools and frameworks for building Java web applications and web services (previously sold as a separate product). As of Xcode 3.0, Apple dropped[14] WebObjects development inside Xcode; WOLips[15] should be used instead. Xcode 3 still includes the WebObjects frameworks.

Xcode includes the GUI tool Instruments, which runs atop DTrace, a dynamic tracing framework created by Sun Microsystems and released as part of OpenSolaris.

[edit] References

  1. ^ "Mac App Store – Xcode". Apple. http://itunes.apple.com/app/xcode/id448457090. Retrieved 2011-12-21. 
  2. ^ "Mac Dev Center". Apple Developer. http://developer.apple.com/devcenter/mac/. Retrieved 2011-07-31. 
  3. ^ Adriaan van Os. "GNU Pascal and Xcode". Microbizz.nl. http://www.microbizz.nl/gpcxcode.html. Retrieved 2010-06-21. 
  4. ^ "Using Free Pascal with Xcode". Pascal-central.com. http://pascal-central.com/fp-xcode/. Retrieved 2010-06-21. 
  5. ^ "Tools". macada.org. http://www.macada.org/macada/Tools.html. Retrieved 2011-02-08. 
  6. ^ "CSharpPlugin - cocoa-sharp-dev - Google Code". Code.google.com. http://code.google.com/p/cocoa-sharp-dev/wiki/CSharpPlugin. Retrieved 2010-06-21. 
  7. ^ "CamelBones, an Objective-C/Perl bridge for Mac OS X & GNUStep - Home". Camelbones.sourceforge.net. 2004-12-01. http://camelbones.sourceforge.net/index.html. Retrieved 2010-06-21. 
  8. ^ "Haskell Xcode Plugin". Hoovy.org. 2007-02-13. http://hoovy.org/HaskellXcodePlugin/. Retrieved 2010-06-21. 
  9. ^ Apple - Mac OS X Leopard - Features - 300+ New Features[dead link]
  10. ^ "Apple Developer Tools for Java". Apple. http://developer.apple.com/library/mac/#documentation/Java/Conceptual/Java14Development/02-JavaDevTools/JavaDevTools.html#//apple_ref/doc/uid/TP40001884-SW1. Retrieved 2011-02-08. 
  11. ^ "WWDC Software Notes: Safari 5, Xcode 4, iTunes 9.2". Mac Rumors. 2010-06-08. http://www.macrumors.com/2010/06/08/wwdc-software-notes-safari-5-xcode-4-itunes-9-2/. Retrieved 2010-06-21. 
  12. ^ "Developer Tools - What's New in Xcode 4". Apple Developer. http://developer.apple.com/technologies/tools/whats-new.html. Retrieved 2011-02-08. 
  13. ^ "Xcode 4 GM Released for Developers". osxdaily.com. February 3, 2011. http://osxdaily.com/2011/02/03/xcode-4-gm-released-for-developers/. Retrieved 2011-02-08. 
  14. ^ David Holt says: (2010-05-15). "Facts about WebObjects (WebObjects Community)". Wocommunity.org. http://www.wocommunity.org/webobjects_faq.html#xcode3. Retrieved 2010-06-21. 
  15. ^ "WOLips". Wiki.objectstyle.org. 2010-02-27. http://wiki.objectstyle.org/confluence/display/WOL/WOLips. Retrieved 2010-06-21. 

[edit] External links

Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages