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 easy and fun.
Xcode includes the Xcode IDE, Swift and C/C++/Objective-C compilers, Instruments analysis tool, simulators, the latest SDKs, and hundreds of powerful features:
Innovative tools help you create great apps
• Swift is an intuitive programming language that is safe, fast, and modern
• SwiftUI is a revolutionary new framework to create user interfaces with a declarative Swift syntax
• Playgrounds are a fun way to experiment and interact with Swift code
• View debugging shows a 3D stack of all your app's UI view layers at runtime
• Split editors in virtually unlimited ways, show previews, or choose an assistant to see related content
• Live Issues display errors as you type, and Fix-its improve your code with just a click
• Source control navigator and service integrations help you manage code across a team
SwiftUI and Interface Builder make it easy to design your interface
• SwiftUI uses declarative Swift code that clearly describes your interface
• Design canvas graphically builds UI views using the library of controls and modifyers
• Preview SwiftUI code or UIKit interfaces in different screen sizes, orientations, and font sizes
• SwiftUI code is always in perfect sync with the graphical design canvas and previews
• Animations are built using simple commands that describe the action you want to see
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
• Open Quickly instantly opens any file within your project
• Data tips and Quick Look can inspect a variable by hovering your mouse over code while debugging
• 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 build and test on a server Mac running Xcode
Instruments for performance analysis
• 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 run applications on an iPhone, iPad, Apple TV, or 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.
• This update fixes an issue that could cause Xcode to crash when viewing documentation
Xcode 12 includes Swift 5.3 and SDKs for iOS 14, iPadOS 14, tvOS 14, watchOS 7, and macOS Catalina
• App Clips are a small part of your app that’s discoverable at the moment it’s needed, loads in seconds, and launches quickly
• WidgetKit uses SwiftUI to build beautiful new widgets that users can install directly on their iPhone home screen
• StoreKit testing framework and transaction manager make it easy to test and debug in-app purchases
Refined user interface
• Document tabs open any type of document in a lightweight editor tab, including logs, asset catalogs, and UI files
• Navigator fonts are now resizable based on the system setting, or can be manually configured
• Code completion has a new, simplified interface that is faster, and makes it easier to choose the correct code
• Organizer is completely redesigned, and reports new app metrics such as hitches in animation and scrolling
Swift and SwiftUI
• Performance for SwiftUI has been improved throughout, and new Lazy views can efficiently handle enormous data sets
• SwiftUI Views can be turned into reusable components that appear in the Xcode library and in code completions
• Swift Package Manager supports resources and localizations, making it great for sharing SwiftUI components
• Swift compiler’s improved diagnostics make it much easier to understand coding mistakes, especially in SwiftUI code
Ratings and ReviewsSee All
Cannot run, quit then run again.
An IDE that cannot run its own program twice in succession is bad. One that has had this bug for several versions is really bad. It seems if an internal Apple dev doesn't notice or say something, it won't get fixed. Numerous times we've tried using support, always to be refunded saying take it up as a bug report. And let's talk about documentation. No, there's almost no useful documentation, so let's not. Given thier billions, you would think they would spend a little on QA and documentation. Also, Swift is not a replacement for Obj-C, so quit pushing it as if it were. And a Mac is different than an iPad (for now) so document it correctly. Many APIs now refer to iOS and seem to say, "Oh, yeah, Mac is the same, sorta." C'mon, Apple, pay a little more attention to the dev environment, please!
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.
It Works, But It's Unacceptably Annoying
It works more or less as expected and you can type in it. That's pretty much where the pros end.
There are two main problems that I have with this application. First off is the file size. It's insanely large for a program that can easily be replaced by text edit or notepad. It's almost 7GB and is the 4th largest application on my system - larger than most games.
The other problem is the constant updating and the way they work. Updating is great for most things. However, this program automatically updates at the worst times and it usually takes forever to do so. Like I can be on my MacBook for hours, but if I go to use Xcode suddenly it has to update and can't be used while updating. If my MacBook has been sitting around for days with automatic updates on the whole time, still needs to update or is in the process of updating when I try to use it. So if I updated earlier that day then used it and need to go back to it 2 hours later? Yep, still a 50% chance or so that it's going to have to update first or it's already in the midst of updating and can't be used. Not only this, but even when I'm not using or trying to use Xcode, and I'm in the middle of doing something else, it takes the liberty of letting me know that Xcode is being updated and can't be used while it's being updated.
I give it 2 stars only because it works fine when you can actually get it to open and don't have to do the perpetual update song and dance.
With Family Sharing set up, up to six family members can use this app.