Alternatives to Xcode logo

Alternatives to Xcode

Visual Studio, Swift, Cocoa (OS X), Android Studio, and Atom are the most popular alternatives and competitors to Xcode.
12.9K
9.1K
+ 1
209

What is Xcode and what are its top alternatives?

The Xcode IDE is at the center of the Apple development experience. Tightly integrated with the Cocoa and Cocoa Touch frameworks, Xcode is an incredibly productive environment for building amazing apps for Mac, iPhone, and iPad.
Xcode is a tool in the Integrated Development Environment category of a tech stack.

Top Alternatives to Xcode

  • Visual Studio

    Visual Studio

    Visual Studio is a suite of component-based software development tools and other technologies for building powerful, high-performance applications. ...

  • Swift

    Swift

    Writing code is interactive and fun, the syntax is concise yet expressive, and apps run lightning-fast. Swift is ready for your next iOS and OS X project — or for addition into your current app — because Swift code works side-by-side with Objective-C. ...

  • Cocoa (OS X)

    Cocoa (OS X)

    Much of Cocoa is implemented in Objective-C, an object-oriented language that is compiled to run at incredible speed, yet employs a truly dynamic runtime making it uniquely flexible. Because Objective-C is a superset of C, it is easy to mix C and even C++ into your Cocoa applications. ...

  • Android Studio

    Android Studio

    Android Studio is a new Android development environment based on IntelliJ IDEA. It provides new features and improvements over Eclipse ADT and will be the official Android IDE once it's ready. ...

  • Atom

    Atom

    At GitHub, we're building the text editor we've always wanted. A tool you can customize to do anything, but also use productively on the first day without ever touching a config file. Atom is modern, approachable, and hackable to the core. We can't wait to see what you build with it. ...

  • Eclipse

    Eclipse

    Standard Eclipse package suited for Java and plug-in development plus adding new plugins; already includes Git, Marketplace Client, source code and developer documentation. Click here to file a bug against Eclipse Platform. ...

  • IntelliJ IDEA

    IntelliJ IDEA

    Out of the box, IntelliJ IDEA provides a comprehensive feature set including tools and integrations with the most important modern technologies and frameworks for enterprise and web development with Java, Scala, Groovy and other languages. ...

  • AppCode

    AppCode

    It is an integrated development environment for Swift, Objective-C, C, C++, and JavaScript development built on JetBrains’ IntelliJ IDEA platform. It takes care of your routine tasks and saves you from extra typing. ...

Xcode alternatives & related posts

Visual Studio logo

Visual Studio

28.1K
21.9K
1K
State-of-the-art tools and services that you can use to create great apps for devices, the cloud, and everything...
28.1K
21.9K
+ 1
1K
PROS OF VISUAL STUDIO
  • 296
    Intellisense, ui
  • 236
    Complete ide and debugger
  • 161
    Plug-ins
  • 99
    Integrated
  • 90
    Documentation
  • 34
    Node tools for visual studio (ntvs)
  • 33
    Fast
  • 28
    Free Community edition
  • 21
    Simple
  • 16
    Bug free
  • 5
    Made by Microsoft
  • 4
    Full free community version
  • 3
    Productivity Power Tools
  • 3
    JetBrains plugins (ReSharper etc.) work sufficiently OK
  • 2
    VIM integration
  • 2
    Vim mode
  • 1
    The Power and Easiness to Do anything in any.. language
  • 1
    I develop UWP apps and Intellisense is super useful
CONS OF VISUAL STUDIO
  • 13
    Bulky
  • 12
    Made by Microsoft
  • 2
    Only avalible on Windows

related Visual Studio posts

Nicholas Rogoff

Secure Membership Web API backed by SQL Server. This is the backing API to store additional profile and complex membership metadata outside of an Azure AD B2C provider. The front-end using the Azure AD B2C to allow 3rd party trusted identity providers to authenticate. This API provides a way to add and manage more complex permission structures than can easily be maintained in Azure AD.

We have .Net developers and an Azure infrastructure environment using server-less functions, logic apps and SaaS where ever possible. For this service I opted to keep it as a classic WebAPI project and deployed to AppService.

  • Trusted Authentication Provider: @AzureActiveDirectoryB2C
  • Frameworks: .NET Core
  • Language: C# , Microsoft SQL Server , JavaScript
  • IDEs: Visual Studio Code , Visual Studio
  • Libraries: jQuery @EntityFramework, @AutoMapper, @FeatureToggle , @Swashbuckle
  • Database: @SqlAzure
  • Source Control: Git
  • Build and Release Pipelines: Azure DevOps
  • Test tools: Postman , Newman
  • Test framework: @nUnit, @moq
  • Infrastructure: @AzureAppService, @AzureAPIManagement
See more
Maria Naggaga
Senior Program Manager - .NET Team at Microsoft · | 7 upvotes · 341.7K views

.NET Core is #free, #cross-platform, and #opensource. A developer platform for building all types of apps ( #web apps #mobile #games #machinelearning #AI and #Desktop ).

Developers have chosen .NET for:

Productive: Combined with the extensive class libraries, common APIs, multi-language support, and the powerful tooling provided by the Visual Studio family ( Visual Studio and Visual Studio Code ), .NET is the most productive platform for developers.

Any app: From mobile applications running on iOS, Android and Windows, to Enterprise server applications running on Windows Server and Linux, or high-scale microservices running in the cloud, .NET provides a solution for you.

Performance: .NET is fast. Really fast! The popular TechEmpower benchmark compares web application frameworks with tasks like JSON serialization, database access, and server side template rendering - .NET performs faster than any other popular framework.

See more
Swift logo

Swift

12.2K
8.6K
1.2K
An innovative new programming language for Cocoa and Cocoa Touch.
12.2K
8.6K
+ 1
1.2K
PROS OF SWIFT
  • 251
    Ios
  • 176
    Elegant
  • 124
    Not Objective-C
  • 105
    Backed by apple
  • 91
    Type inference
  • 60
    Generics
  • 54
    Playgrounds
  • 49
    Semicolon free
  • 39
    OSX
  • 35
    Tuples offer compound variables
  • 23
    Clean Syntax
  • 23
    Easy to learn
  • 21
    Open Source
  • 20
    Functional
  • 19
    Beautiful Code
  • 11
    Linux
  • 11
    Dynamic
  • 10
    Promotes safe, readable code
  • 9
    Protocol-oriented programming
  • 8
    No S-l-o-w JVM
  • 8
    Explicit optionals
  • 6
    Storyboard designer
  • 5
    Best UI concept
  • 5
    Type safety
  • 5
    Super addicting language, great people, open, elegant
  • 5
    Optionals
  • 4
    Powerful
  • 4
    Fail-safe
  • 4
    Highly Readable codes
  • 4
    Faster and looks better
  • 4
    Swift is faster than Objective-C
  • 4
    Feels like a better C++
  • 4
    Its friendly
  • 3
    Strong Type safety
  • 3
    Easy to learn and work
  • 3
    Much more fun
  • 3
    Protocol extensions
  • 3
    Native
  • 3
    Its fun and damn fast
  • 3
    Easy to Maintain
  • 2
    Esay
  • 2
    MacOS
  • 2
    Type Safe
  • 2
    All Cons C# and Java Swift Already has
  • 2
    Protocol oriented programming
  • 2
    Protocol as type
  • 1
    Actually don't have to own a mac
  • 1
    Can interface with C easily
  • 1
    Numbers with underbar
  • 1
    Optional chain
  • 1
    Runs Python 8 times faster
  • 1
    Free from Memory Leak
  • 1
    Swift is easier to understand for non-iOS developers.
  • 1
    Great for Multi-Threaded Programming
  • 1
    Objec
CONS OF SWIFT
  • 4
    Must own a mac
  • 2
    Memory leaks are not uncommon
  • 1
    Its classes compile to roughly 300 lines of assembly
  • 1
    Complicated process for exporting modules
  • 1
    Very irritatingly picky about things that’s
  • 1
    Is a lot more effort than lua to make simple functions
  • 0
    Overly complex options makes it easy to create bad code

related Swift posts

Shivam Bhargava
AVP - Business at VAYUZ Technologies Pvt. Ltd. · | 22 upvotes · 191.8K views

Hi Community! Trust everyone is keeping safe. I am exploring the idea of building a #Neobank (App) with end-to-end banking capabilities. In the process of exploring this space, I have come across multiple Apps (N26, Revolut, Monese, etc) and explored their stacks in detail. The confusion remains to be the Backend Tech to be used?

What would you go with considering all of the languages such as Node.js Java Rails Python are suggested by some person or the other. As a general trend, I have noticed the usage of Node with React on the front or Node with a combination of Kotlin and Swift. Please suggest what would be the right approach!

See more
Conor Myhrvold
Tech Brand Mgr, Office of CTO at Uber · | 12 upvotes · 1M views

Excerpts from how we developed (and subsequently open sourced) Uber's cross-platform mobile architecture framework, RIBs , going from Objective-C to Swift in the process for iOS: https://github.com/uber/RIBs

Uber’s new application architecture (RIBs) extensively uses protocols to keep its various components decoupled and testable. We used this architecture for the first time in our new rider application and moved our primary language from Objective-C to Swift. Since Swift is a very static language, unit testing became problematic. Dynamic languages have good frameworks to build test mocks, stubs, or stand-ins by dynamically creating or modifying existing concrete classes.

Needless to say, we were not very excited about the additional complexity of manually writing and maintaining mock implementations for each of our thousands of protocols.

The information required to generate mock classes already exists in the Swift protocol. For Uber’s use case, we set out to create tooling that would let engineers automatically generate test mocks for any protocol they wanted by simply annotating them.

The iOS codebase for our rider application alone incorporates around 1,500 of these generated mocks. Without our code generation tool, all of these would have to be written and maintained by hand, which would have made testing much more time-intensive. Auto-generated mocks have contributed a lot to the unit test coverage that we have today.

We built these code generation tools ourselves for a number of reasons, including that there weren’t many open source tools available at the time we started our effort. Today, there are some great open source tools to generate resource accessors, like SwiftGen. And Sourcery can help you with generic code generation needs:

https://eng.uber.com/code-generation/ https://eng.uber.com/driver-app-ribs-architecture/

(GitHub : https://github.com/uber/RIBs )

See more
Cocoa (OS X) logo

Cocoa (OS X)

34
42
6
The Cocoa frameworks consist of libraries, APIs, and runtimes that form the development layer for all of OS...
34
42
+ 1
6
PROS OF COCOA (OS X)
  • 3
    Great community
  • 2
    IOS
  • 1
    Backed by apple
CONS OF COCOA (OS X)
    Be the first to leave a con

    related Cocoa (OS X) posts

    Android Studio logo

    Android Studio

    16.3K
    12.1K
    355
    Android development environment based on IntelliJ IDEA
    16.3K
    12.1K
    + 1
    355
    PROS OF ANDROID STUDIO
    • 173
      Android studio is a great tool, getting better and bet
    • 101
      Google's official android ide
    • 35
      Intelligent code editor with lots of auto-completion
    • 25
      Its powerful and robust
    • 5
      Easy creating android app
    • 3
      Amazing Layout Designer
    • 3
      Great Code Tips
    • 3
      Great tool & very helpful
    • 2
      Built in Emulator
    • 2
      Easy to use
    • 2
      Keyboard Shortcuts are Amazing Out of the box
    • 1
      Cc
    CONS OF ANDROID STUDIO
    • 4
      Huge memory usage
    • 4
      Slow emulator
    • 2
      No checking incompatibilities
    • 2
      Complex for begginers
    • 1
      Lags behind IntelliJ IDEA
    • 1
      Slow release process

    related Android Studio posts

    Gustavo Muñoz
    Web UI Developer at Globant · | 8 upvotes · 363.7K views

    In my modest opinion, Flutter is the future of mobile development. The framework is as important to mobile as React is to the web. And seeing that React Native does not finish taking off, I am focusing all my efforts on learning Flutter and Dart. The ecosystem is amazing. The community is crazy about Flutter. There are enough resources to learn and enjoy the framework, and the tools developed to work with it are amazing. Android Studio or Visual Studio Code has incredible plugins and Dart is a pretty straight forward and easy-to-learn language, even more, if you came from JavaScript. I admit it. I'm in love with Flutter. When you are not a designer, having a framework focused on design an pretty things is a must. And counting with tools like #flare for animations makes everything easier. It is so amazing that I wish I had a big mobile project right now at work just to use Flutter.

    See more
    Julien DeFrance
    Principal Software Engineer at Tophatter · | 8 upvotes · 303.6K views

    As a Engineering Manager & Director at SmartZip, I had a mix of front-end, back-end, #mobile engineers reporting to me.

    Sprints after sprints, I noticed some inefficiencies on the MobileDev side. People working multiple sprints in a row on their Xcode / Objective-C codebase while some others were working on Android Studio. After which, QA & Product ensured both applications were in sync, on a UI/UX standpoint, creating addional work, which also happened to be extremely costly.

    Our resources being so limited, my role was to stop this bleeding and keep my team productive and their time, valuable.

    After some analysis, discussions, proof of concepts... etc. We decided to move to a single codebase using React Native so our velocity would increase.

    After some initial investment, our initial assumptions were confirmed and we indeed started to ship features a lot faster than ever before. Also, our engineers found a way to perform this upgrade incrementally, so the initial platform-specific codebase wouldn't have to entirely be rewritten at once but only gradually and at will.

    Feedback around React Native was very positive. And I doubt - for the kind of application we had - no one would want to go back to two or more code bases. Our application was still as Native as it gets. And no feature or device capability was compromised.

    See more
    Atom logo

    Atom

    12.7K
    10.6K
    2.7K
    A hackable text editor for the 21st Century
    12.7K
    10.6K
    + 1
    2.7K
    PROS OF ATOM
    • 526
      Free
    • 444
      Open source
    • 341
      Modular design
    • 318
      Hackable
    • 316
      Beautiful UI
    • 170
      Github integration
    • 147
      Backed by github
    • 119
      Built with node.js
    • 113
      Web native
    • 107
      Community
    • 34
      Packages
    • 18
      Cross platform
    • 5
      Multicursor support
    • 5
      Nice UI
    • 5
      TypeScript editor
    • 3
      cli start
    • 3
      Simple but powerful
    • 3
      Open source, lots of packages, and so configurable
    • 3
      Chrome Inspector works IN EDITOR
    • 3
      Snippets
    • 2
      Awesome
    • 2
      Code readability
    • 2
      Smart TypeScript code completion
    • 2
      It's powerful
    • 2
      Well documented
    • 1
      "Free", "Hackable", "Open Source", The Awesomness
    • 1
      works with GitLab
    • 1
      full support
    • 1
      vim support
    • 1
      Split-Tab Layout
    • 1
      Consistent UI on all platforms
    • 1
      User friendly
    • 1
      Hackable and Open Source
    • 1
      Made by github. YAY
    CONS OF ATOM
    • 19
      Slow with large files
    • 7
      Heavy and slow
    • 6
      Slow startup
    • 1
      Most of the time packages are hard to find.
    • 1
      Can be easily Modified

    related Atom posts

    Jerome Dalbert
    Senior Backend Engineer at StackShare · | 12 upvotes · 370.3K views

    I liked Sublime Text for its speed, simplicity and keyboard shortcuts which synergize well when working on scripting languages like Ruby and JavaScript. I extended the editor with custom Python scripts that improved keyboard navigability such as autofocusing the sidebar when no files are open, or changing tab closing behavior.

    But customization can only get you so far, and there were little things that I still had to use the mouse for, such as scrolling, repositioning lines on the screen, selecting the line number of a failing test stack trace from a separate plugin pane, etc. After 3 years of wearily moving my arm and hand to perform the same repetitive tasks, I decided to switch to Vim for 3 reasons:

    • your fingers literally don’t ever need to leave the keyboard home row (I had to remap the escape key though)
    • it is a reliable tool that has been around for more than 30 years and will still be around for the next 30 years
    • I wanted to "look like a hacker" by doing everything inside my terminal and by becoming a better Unix citizen

    The learning curve is very steep and it took me a year to master it, but investing time to be truly comfortable with my #TextEditor was more than worth it. To me, Vim comes close to being the perfect editor and I probably won’t need to switch ever again. It feels good to ignore new editors that come out every few years, like Atom and Visual Studio Code.

    See more
    Julian Sanchez
    Lead Developer at Chore Champion · | 9 upvotes · 294.8K views

    We use Visual Studio Code because it allows us to easily and quickly integrate with Git, much like Sublime Merge ,but it is integrated into the IDE. Another cool part about VS Code is the ability collaborate with each other with Visual Studio Live Share which allows our whole team to get more done together. It brings the convenience of the Google Suite to programming, offering something that works more smoothly than anything found on Atom or Sublime Text

    See more
    Eclipse logo

    Eclipse

    2K
    1.8K
    376
    IDE for Java EE Developers
    2K
    1.8K
    + 1
    376
    PROS OF ECLIPSE
    • 130
      Does it all
    • 75
      Integrates with most of tools
    • 62
      Easy to use
    • 61
      Java IDE
    • 30
      Best Java IDE
    • 8
      Open source
    • 2
      Hard for newbews
    • 2
      Great gdb integration
    • 1
      Lightweight
    • 1
      True open source with huge contribution
    • 1
      Great code suggestions
    • 1
      Professional
    • 1
      Good Git client allowing direct stage area edit
    • 1
      Extensible
    • 0
      Works with php
    CONS OF ECLIPSE
    • 10
      2000 Design
    • 6
      Bad performance
    • 3
      Hard to use

    related Eclipse posts

    christy craemer

    UPDATE: Thanks for the great response. I am going to start with VSCode based on the open source and free version that will allow me to grow into other languages, but not cost me a license ..yet.

    I have been working with software development for 12 years, but I am just beginning my journey to learn to code. I am starting with Python following the suggestion of some of my coworkers. They are split between Eclipse and IntelliJ IDEA for IDEs that they use and PyCharm is new to me. Which IDE would you suggest for a beginner that will allow expansion to Java, JavaScript, and eventually AngularJS and possibly mobile applications?

    See more
    Dean Stringer

    Have been a Visual Studio Code user since just after launch to the general public, having used the likes of Eclipse and Atom previously. Was amazed how mature it seemed off the bat and was super intrigued by the bootstrapped nature of it having been written/based on Electron/TypeScript, and of course being an open-source app from Microsoft. The features, plugin ecosystem and release frequency are very impressive. I do dev work on both Mac and Windows and don't use anything else now as far as IDEs go.

    See more
    IntelliJ IDEA logo

    IntelliJ IDEA

    26.8K
    21K
    1.5K
    Capable and Ergonomic IDE for JVM
    26.8K
    21K
    + 1
    1.5K
    PROS OF INTELLIJ IDEA
    • 295
      Fantastically intelligent
    • 242
      Best-in-class ide
    • 190
      Many languages support
    • 154
      Java
    • 120
      Fast
    • 79
      Code analysis
    • 77
      Reliable
    • 75
      Out of the box integration with maven, git, svn
    • 63
      Plugin architecture
    • 60
      Integrated version control
    • 11
      Code refactoring support
    • 9
      Best java IDE
    • 6
      Local history
    • 5
      Integrated Database Navigator
    • 5
      Built-in terminal/run tools
    • 5
      Code Completion
    • 4
      Free for open-source development, students and teacher
    • 4
      All
    • 4
      Free If you're a Student
    • 3
      Cross platform
    • 3
      IDE
    • 3
      Kotlin
    • 3
      ERD Diagrams
    • 3
      Base for Android Studio
    • 3
      Database/Code integration
    • 2
      Server and client-side debugger
    • 2
      Free
    • 2
      More than enough languages for any developer
    • 2
      Typescript support
    • 2
      Multicursor support
    • 2
      Intuitive
    • 2
      Reformating Code
    • 2
      Command-line tools
    • 2
      Out Of The Box features
    • 2
      Android Integration
    • 2
      Vim support
    • 2
      Special icons for most filetypes in project list
    • 2
      Supports many frameworks
    • 2
      Built-in web server
    • 2
      Live Templates
    • 2
      Scala support
    • 1
      Works fine with mac os catalina
    • 1
      A lot of plugin
    • 1
      Just works
    • 1
      Integrated Ssh/Ftp Managers
    • 1
      Full support
    • 1
      Task managers
    • 1
      Diff tools
    • 1
      File Watchers
    • 1
      Support for various package managers
    • 1
      Integrated Code Linting
    • 1
      Its fake intellisense is better than real IntelliSense
    • 1
      Clean UI
    • 1
      Open source
    • 1
      Column Selection Mode
    • 1
      So modernised
    • 1
      Efficient, one Stop solution
    CONS OF INTELLIJ IDEA
    • 18
      Large footprint required to really enjoy (mem/disc)
    • 13
      Very slow
    • 7
      Bad for beginners
    • 6
      UI is not intuitive
    • 5
      Not nearly as many tools to integrate as vs code
    • 4
      Constant reindexing
    • 3
      Needs a lot of CPU and RAM power
    • 2
      Doesn't work that well with windows 10 edu
    • 2
      Built in terminal is slow
    • 1
      Ruby is a plug in
    • 0
      AAD

    related IntelliJ IDEA posts

    christy craemer

    UPDATE: Thanks for the great response. I am going to start with VSCode based on the open source and free version that will allow me to grow into other languages, but not cost me a license ..yet.

    I have been working with software development for 12 years, but I am just beginning my journey to learn to code. I am starting with Python following the suggestion of some of my coworkers. They are split between Eclipse and IntelliJ IDEA for IDEs that they use and PyCharm is new to me. Which IDE would you suggest for a beginner that will allow expansion to Java, JavaScript, and eventually AngularJS and possibly mobile applications?

    See more
    Andrey Kurdyumov

    I use Visual Studio because it provides me best default configuration for development. Less choice helps me concentrate on the product. In a sense it is iPhone of software development for me. When my laptop broke, I just download latest version of VS and start coding without any configuration. For sure it has best editor in terms of perceived responsiveness. Could not say the same for IntelliJ IDEA unfortunately.

    See more
    AppCode logo

    AppCode

    40
    43
    3
    IDE for iOS/macOS development
    40
    43
    + 1
    3
    PROS OF APPCODE
    • 1
      Awesome refactoring support
    • 1
      Powerful search and replace
    • 1
      Better typing
    CONS OF APPCODE
      Be the first to leave a con

      related AppCode posts