Need advice about which tool to choose?Ask the StackShare community!

Swift

13.7K
9.9K
+ 1
1.2K
Xamarin

1.2K
1.4K
+ 1
775
Add tool

Swift vs Xamarin: What are the differences?

Swift: An innovative new programming language for Cocoa and Cocoa Touch. 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; Xamarin: Create iOS, Android and Mac apps in C#. Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.

Swift belongs to "Languages" category of the tech stack, while Xamarin can be primarily classified under "Cross-Platform Mobile Development".

"Ios", "Elegant" and "Not Objective-C" are the key factors why developers consider Swift; whereas "Power of c# on mobile devices", "Native apps with native ui controls" and "Native performance" are the primary reasons why Xamarin is favored.

Swift is an open source tool with 48.2K GitHub stars and 7.71K GitHub forks. Here's a link to Swift's open source repository on GitHub.

According to the StackShare community, Swift has a broader approval, being mentioned in 979 company stacks & 526 developers stacks; compared to Xamarin, which is listed in 74 company stacks and 65 developer stacks.

Get Advice from developers at your company using Private StackShare. Sign up for Private StackShare.
Learn More
Pros of Swift
Pros of Xamarin
  • 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
  • 24
    Easy to learn
  • 23
    Clean Syntax
  • 21
    Open Source
  • 20
    Functional
  • 19
    Beautiful Code
  • 11
    Linux
  • 11
    Dynamic
  • 10
    Promotes safe, readable code
  • 9
    Protocol-oriented programming
  • 8
    Explicit optionals
  • 8
    No S-l-o-w JVM
  • 6
    Storyboard designer
  • 5
    Best UI concept
  • 5
    Optionals
  • 5
    Type safety
  • 5
    Super addicting language, great people, open, elegant
  • 4
    Its friendly
  • 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++
  • 3
    Its fun and damn fast
  • 3
    Easy to learn and work
  • 3
    Much more fun
  • 3
    Protocol extensions
  • 3
    Native
  • 3
    Strong Type safety
  • 3
    Easy to Maintain
  • 2
    Protocol oriented programming
  • 2
    Esay
  • 2
    MacOS
  • 2
    Type Safe
  • 2
    All Cons C# and Java Swift Already has
  • 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
  • 120
    Power of c# on mobile devices
  • 80
    Native performance
  • 77
    Native apps with native ui controls
  • 71
    No javascript - truely compiled code
  • 67
    Sharing more than 90% of code over all platforms
  • 45
    Ability to leverage visual studio
  • 44
    Many great c# libraries
  • 43
    Mvvm pattern
  • 36
    Amazing support
  • 34
    Powerful platform for .net developers
  • 19
    GUI Native look and Feel
  • 15
    Nuget package manager
  • 11
    Free
  • 9
    Backed by Microsoft
  • 9
    Enables code reuse on server
  • 8
    Faster Development
  • 7
    Use of third-party .NET libraries
  • 7
    Best performance than other cross-platform
  • 7
    Easy Debug and Trace
  • 7
    Open Source
  • 7
    It's free since Apr 2016
  • 6
    Xamarin.forms is the best, it's amazing
  • 6
    Mac IDE (Xamarin Studio)
  • 5
    Power of C#, no javascript, visual studio
  • 5
    C# mult paradigm language
  • 4
    Compatible to develop Hybrid apps
  • 4
    Great docs
  • 4
    Microsoft stack
  • 4
    Microsoft backed
  • 4
    That just work for every scenario
  • 3
    Small learning curve for Mobile developers
  • 3
    Well Designed
  • 2
    Ionic
  • 2
    Ability to leverage legacy C and C++

Sign up to add or upvote prosMake informed product decisions

Cons of Swift
Cons of Xamarin
  • 5
    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
  • 9
    Build times
  • 5
    Visual Studio
  • 3
    Complexity
  • 3
    Scalability
  • 3
    Price
  • 2
    Nuget
  • 2
    Maturity
  • 2
    Build Tools
  • 2
    Support
  • 0
    Maturidade
  • 0
    Performance

Sign up to add or upvote consMake informed product decisions

- No public GitHub repository available -

What is 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.

What is Xamarin?

Xamarin’s Mono-based products enable .NET developers to use their existing code, libraries and tools (including Visual Studio*), as well as skills in .NET and the C# programming language, to create mobile applications for the industry’s most widely-used mobile devices, including Android-based smartphones and tablets, iPhone, iPad and iPod Touch.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Swift?
What companies use Xamarin?
See which teams inside your own company are using Swift or Xamarin.
Sign up for Private StackShareLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Swift?
What tools integrate with Xamarin?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

What are some alternatives to Swift and Xamarin?
Objective-C
Objective-C is a superset of the C programming language and provides object-oriented capabilities and a dynamic runtime. Objective-C inherits the syntax, primitive types, and flow control statements of C and adds syntax for defining classes and methods. It also adds language-level support for object graph management and object literals while providing dynamic typing and binding, deferring many responsibilities until runtime.
React Native
React Native enables you to build world-class application experiences on native platforms using a consistent developer experience based on JavaScript and React. The focus of React Native is on developer efficiency across all the platforms you care about - learn once, write anywhere. Facebook uses React Native in multiple production apps and will continue investing in React Native.
Kotlin
Kotlin is a statically typed programming language for the JVM, Android and the browser, 100% interoperable with Java
Go
Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
See all alternatives