Xcode includes everything developers need to create great applications for Mac, iPhone, iPad, Apple TV, and Apple Watch. Xcode provides developers a unified workflow for user interface design, coding, testing, and debugging. The Xcode IDE combined with the Swift programming language make developing apps easier and more fun than ever before.

Xcode includes the Xcode IDE, Swift and Objective-C compilers, Instruments analysis tool, simulators, the latest SDKs, and hundreds of powerful features:

Innovative tools help you create great apps
• Swift is a revolutionary programming language that is safe, fast, and modern
• Playgrounds are a fun way to experiment and interact with Swift code
• Interface Builder displays pixel-perfect UI for each target device and can edit at any zoom level
• View debugging shows a 3D stack of all your app's UI view layers at runtime
• Assistant editors show content related to your primary task
• Live Issues display errors as you type, and Fix-its can correct mistakes for you

Swift is a powerful, modern, and fun programming language
• Safe by design, Swift syntax and features prevent entire categories of bugs
• Fast code execution and compile time are powered by the proven LLVM compiler
• Modern language features are inspired by leading research, including:
- Closures unified with function pointers
- Tuples and multiple return values
- Structs as value types that support methods, extensions, protocols
- Powerful protocols that can extend functionality throughout your codebase
- Functional programming patterns including map and filter

Interface Builder makes it easy to design your interface without code
• Storyboards let you arrange the complete flow of screens within your app
• See your custom controls rendered live within the design canvas
• Customize your interface for different devices, screen sizes, and orientations
• StackViews make it easy to reason about the layout of each section of your interface
• Create connections from your GUI design directly to the related source code

Professional editor and debugger keep your code front and center
• Hit a few keys and Open Quickly will instantly open any file within your project
• Message bubbles show errors, warnings, and other issues right beside your code
• Data tips show a variable's value by hovering your mouse over the code
• Quick Look variables while debugging to see the actual color, bezier path, image, and more
• Third party app extensions can add new capabilities to the source editor

Test driven development is built right in
• Use the Test Navigator to add, edit, or run unit tests or user interface tests with just a click
• Test Assistant makes it easy to edit your code and related tests, side-by-side
• Create continuous integration bots using macOS Server to automatically build and test your apps
• Monitor performance and user interface test data using macOS Server to immediately spot regressions
• Analyzer travels countless code paths looking for logical errors before they become bugs

Instruments makes performance analysis beautiful
• Compare CPU, disk, memory, and OpenGL performance as graphical tracks over time
• Identify performance bottlenecks, then dive deep into the code to uncover the cause
• Monitor your app directly, or sample the entire system, with very little overhead

To test or deploy applications on an iOS device, Apple TV, or on Apple Watch all you need is a free Apple ID. To submit your apps to the App Store you must be a member of the Apple Developer Program. Continuous integration features require a current version of macOS Server. Some features may require Internet access.

What's New

Version 9.4.1

Xcode 9.4.1 includes Swift 4.1 and SDKs for iOS 11.4, watchOS 4.3, tvOS 11.4, and macOS High Sierra 10.13.4

• Fixes a security issue in the included Git support and command-line tool

Ratings and Reviews

2.3 out of 5

325 Ratings

325 Ratings

iTunes of IDEs


Apple, please please fix this 2 star disaster . I don’t know what that will take, but these issues people have always had with Xcode are hugely excerbated by this IDE running itself ragged trying to deal with Swift projects of any kind of real production scale. Using Xcode 9 with Obj-C is ok. Not great, but as good as we used to expect. The basics sort of work, and when they did they worked quickly. Letters would appear as you typed them, not a 1/3 of a second afterwards. It’s even worse than the text field I’m typing this in now in the App Store app: what is what is by all accounts 8 year old abandonware.
With Swift the basics in Xcode do not work. Large Swift projects are abominably slow to navigate or compile. It’s very, very hard to say to anyone that this is an ecosystem that’s enjoyable to develop for right now. It’s frustrating because Swift is a really wonderful language, but Xcode is running like iTunes on a 2002 Dell.
For the past year and a half I’ve found no solution, only hundreds of “how to improve Swift compile times” blog posts asking me to just not use great features of the Swift language (most involving type inference) to get around these appalling build times. And no solutions whatsoever to incremental compiling just plain never working with Swift.

Huge performance issues


Xcode 8 ran just fine on my 2017 iMac with 32 GB of RAM. Now Xcode 9 gets slower and slower (especially in storyboard IB mode) that I find myself regularly having to restart. When switching device previews is the worse, but overall, doing anything causes lag. much laggier than xcode 8 in general as well.
Also, when loading the app on a simulator, if it is in the middle of installing and you click run again, the simulator just starts trying to open the app in an infinite loop.

The only reason I use it is for the amazing new preserve vector data

So frustrating


This version of Xcode slows me down so much. Constently missing indexing, which is sometimes (but not always) fixed by restarting. Pressing ‘[‘ or ‘]’ nto puts brackets around something, even if spans like 10 lines – rather than just letting me replace any highlighted text with anything I type. I just tried refactoring a class name and it completely messed it up so I had to revert the changes. Refactoring should be a core component of any IDE. Seriously, is anyone in Apple actually using Xcode to make anything? This is such a frustrating experience.


Apple Distribution International
5.3 GB
Developer Tools
Age Rating
Rated 4+
© 1999–2017 Apple Inc.


  • Family Sharing

    Up to six family members will be able to use this app with Family Sharing enabled.

More By This Developer