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

Swift

14.6K
10.6K
+ 1
1.3K
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
  • 253
    Ios
  • 178
    Elegant
  • 125
    Not Objective-C
  • 106
    Backed by apple
  • 92
    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
  • 10
    Protocol-oriented programming
  • 8
    Explicit optionals
  • 8
    No S-l-o-w JVM
  • 7
    Storyboard designer
  • 5
    Super addicting language, great people, open, elegant
  • 5
    Type safety
  • 5
    Optionals
  • 5
    Best UI concept
  • 4
    Its friendly
  • 4
    Swift is faster than Objective-C
  • 4
    Feels like a better C++
  • 4
    Highly Readable codes
  • 4
    Fail-safe
  • 4
    Powerful
  • 4
    Faster and looks better
  • 3
    Much more fun
  • 3
    Easy to learn and work
  • 3
    Protocol extensions
  • 3
    Native
  • 3
    Its fun and damn fast
  • 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
    Objec
  • 1
    Can interface with C easily
  • 1
    Numbers with underbar
  • 1
    Optional chain
  • 1
    Runs Python 8 times faster
  • 1
    Actually don't have to own a mac
  • 1
    Free from Memory Leak
  • 1
    Swift is easier to understand for non-iOS developers.
  • 1
    Great for Multi-Threaded Programming
  • 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
    Easy Debug and Trace
  • 7
    Use of third-party .NET libraries
  • 7
    It's free since Apr 2016
  • 7
    Best performance than other cross-platform
  • 7
    Open Source
  • 6
    Mac IDE (Xamarin Studio)
  • 6
    Xamarin.forms is the best, it's amazing
  • 5
    Power of C#, no javascript, visual studio
  • 5
    C# mult paradigm language
  • 4
    Compatible to develop Hybrid apps
  • 4
    Microsoft backed
  • 4
    Microsoft stack
  • 4
    Great docs
  • 4
    That just work for every scenario
  • 3
    Well Designed
  • 3
    Small learning curve for Mobile developers
  • 2
    Ability to leverage legacy C and C++
  • 2
    Ionic

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!

Jobs that mention Swift and Xamarin as a desired skillset
Pinterest
San Francisco, CA, US; New York City, NY, US; Portland, OR, US; Seattle, WA, US
Pinterest
San Francisco, CA, US; New York City, NY, US; Portland, OR, US; Seattle, WA, US
Pinterest
Portland, OR, US; San Francisco, CA, US
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
Golang
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