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, open source 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 improve your code with just a click
• Source Control navigator makes it easy to manage code across a team

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
• Refactoring makes it easy to modify the structure of Swift, Objective-C, C, and C++ code
• Hit a few keys and Open Quickly will instantly open any file within your project
• Data tips show a variable's value by hovering your mouse over the code as it runs
• 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 to automatically build and test your apps
• Analyzer travels countless code paths looking for logical errors before they become bugs

Instruments makes performance analysis beautiful
• Compare CPU, disk, memory, and GPU performance as graphical tracks over time
• Identify performance bottlenecks, then dive deep into the code to uncover the cause
• Analyze your app directly, or sample the entire system, with very little overhead
• Create custom instruments with unique visualizations to analyze your own code and frameworks

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. Some features may require Internet access.

What’s New

Version 10.1

Xcode 10.1 includes Swift 4.2.1 and SDKs for iOS 12.1, watchOS 5.1, tvOS 12.1, and macOS Mojave.

Xcode 10 features:

Dark mode in macOS Mojave
• All-new dark appearance throughout Xcode and Instruments
• Asset catalogs add dark and light variants to customize colors and image assets
• Interface Builder easily switches between dark and light variants of the app's interface
• Debugger switches Mac apps between dark and light variants without changing OS settings

Source control
• Code that differs from the repository server is highlighted directly within the editor, including:
- Local changes not yet pushed to the shared repository
- Upstream changes others have made
- Conflicts to address before committing
• Account integration with self-hosted and cloud servers from Atlassian Bitbucket, GitLab, and GitHub
• Account logins generate SSH keys on-demand and upload to the service provider
• Rebase is an option when pulling the latest version of code

Editor enhancements
• Multiple cursors in the editor enable many changes at once
• Code folding ribbon can hide any code block surrounded by braces
• Over-scroll makes it easy to display the last lines of code in the center of the screen

Playgrounds and machine learning
• Completely redesigned REPL-like playgrounds are much faster and more stable
• Run code at any time by hitting SHIFT-RETURN or click the inline Run button to execute to a specific line
• Interactively train and exercise new Create ML models directly within a playground

Test and debug
• Debug symbols download from a device 5x faster than before
• Tests run in parallel across many Simulators to take full advantage of all CPU cores
• Custom instruments provide unique data visualization for any code
• Memory debugger layout is redesigned to make it easier to navigate and visualize the whole app
• Metal shader debugger inspects the execution of vertex, fragment, compute, and tile shader code
• Metal dependency viewer shows a detailed graph of how resources are used

Build Performance
• New build system improves performance and is enabled by default for all projects
• Swift compiles each individual file significantly faster, and greatly improves incremental builds

Ratings and Reviews

2.7 out of 5
631 Ratings
631 Ratings
enceladus86 ,

I've lost all hope now

Day 540. It's still downloading. We haven't gone outside for a week now, since the Murphy's next door never returned from Sainsbury's. Presumed dead, or worse. The streets still seem calm during the days, but at night, I can hear those things, roaming and hunting... we're running out of drinking water. Hopefully I can safely make it to the emergency centre this weekend.

Day 632. Boarded up the doors and windows. The local emergency centre was overrun. We're almost out of supplies. The kids are looking worse by the day since their mum passed away last week. Emilie, my oldest, was bitten and won't survive the night. The terrible screaming from the streets grows stronger and more frantic by the day. I saw a family across the street leap from their balcony and make a run for it. They didn't get far. XCode still hasn't finished downloading.

Day 651... or 653. I've lost count of the days. This will likely be my final message. My radio just went dead. Laid Annabel to rest in the basement next to mum and Em. All alone here now. Just 3% charge left on my MacBook. And XCode is still downloading...

Lord-Bath ,

High Five Apple

OK I have just started working with Xcode and C++ after working with an alternative very expensive product at work, and I think that Xcode knocks the spots off of the competition. It's really fantastic and I am very pleased that this quality product is produced and supported by Apple. The support site is also a gerat place to find additional rescources and obviously developer support. I have looked down below and feel like I'm a little out of line, its difficult to think of an improvement. Yes, my Macbook Pro has been running a little hotter while: coding, debugging, and assembling, so I am looking into how to mittigate this feature. But the softare it’s self is wonderful and has a silky smooth interface and feel, big high five to the Xcode development team. And please keep the C++ support, for me this is the best bit.

Evilelement ,

Flawed but still fantastic IDE software

I have been using Xcode for the last 7 years as an senior iOS engineer. What can I say, it’s came along nicely as the defacto iOS development in development environment. Weather your a beginner or season developer this is the must tool for many job when working on iOS products. Not going to lie that this software does have flaws, as with all things there will always be some degree of issues. The fact it offers WYSIWYG interface builder saves masses of hours in development time. With extensions such as playground, it can never be said that the software does not push for coding innovations.


Apple Distribution International
6.1 GB
Developer Tools
macOS 10.13.6 or later
Age Rating
Rated 4+
© 1999–2018 Apple Inc.


  • Family Sharing

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

More By This Developer