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.
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
• 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
• 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
• 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
Shouldn’t be out of beta
Xcode in itself doesn’t change much year to year so on that end, everything is fine. However, this version of Xcode has completely ruined user interaction. I don’t actually believe that Apple even tested Xcode out using their trackpads because everything regarding storyboards is completely broken. When it comes to scripts, I have no issues. Everything just works. But when it comes to storyboards, I can resize an element or drag it to another spot without weird glitches such as the element flying off the screen and getting deleted. When I drop a textfield element and insert a default value, the text y position is so far down you can only see the top of the letter even though the font size is default and the alignment is perfectly centered horizontall and vertically. Changing between storyboard tabs such as going to the attributes inspector causes the object you are focused on to deselect. How did that even happen?
The worst part about this update is that Xcode 9 Beta 4 was a better build than this release and that was 6 weeks ago. I would say that I don’t recommend updating to this new version as it’s usability seems to be even less than beta to me, but unfortunately, Apple kind of puts you between a rock and a hard place. You basically have to update to this version to keep apps up to date and release those brand new apps to iOS 11 devices.
Great - Despite the haters
I've been writing software and using IDEs for over 20 years and XCode is probably better, overall, than anything else available on any platform. And that list includes every major IDE you've ever heard of. Yes it has some issues here and there. But none of those are show stoppers, and in my career I've never seen a commercial application of any kind that didn't have room for improvement.
Out of 2,096 ratings for XCode (as of this one), to see an equal number of 1-star ratings (versus 5-star) and not much in between, tells me there are a lot of trolls out there who don't use this tool to earn their living (like I do), yet they think their comments matter for some reason.
If you want an honest review, talk to someone who is a professional developer, and who uses this specific tool 8-hours a day to earn their living. If their full time job title does not include the words iOS Developer, then I would pretty much discount whatever they say.
I don't work for Apple, or even know anyone who does, but in my opinion, Apple should not let someone post a review this app unless at a minimum that person has a current paid Apple developer subscription. At least then you'd know that the trolls had to pay $99/year in order to post their 1-star reviews, which in turn would eliminate the majority of them.
Nice application, but remove the app id limit.
I downloaded Xcode (8.2.1 for old mac) recently, and it worked very well. Nice user interface, easy to learn. However, after using it for a week or two, I start getting this error telling me I can’t create more than 10 App IDs in a week. I have created maybe ten test apps, but it has been over a week since I created all of them. I am not ready to start paying $100/month to get rid of this error. This limit/error is very frustrating, and I would have given it five stars otherwise. I think this limit may cause unfinished/not ready apps to enter the app store, as newer developers may pay just to get rid of this error, and then are able to add there unfinished apps to the App Store. Or, they may create extra Apple IDs, and that is less than desirable. Please, remove this limit!
With Family Sharing set up, up to six family members can use this app.