- Xamarin is a world-class development environment for cross-platform mobile apps. Using Xamarin with Visual Studio or Xamarin Studio you are getting all the advantages of modern and powerful IDEs, which helps to boost a development process and simplify development and support process.
- Xamarin delivers high performance compiled code with full access to all the native APIs so you can create native apps with device-specific experiences. Anything you can do in Objective-C or Java, can be done in C# with Xamarin
- Using Xamarin technology allows to keep Native UI across all three platforms, therefor preserving Native Performance while enjoying full API coverage, shared codebase and application logic. It also allows for re-using skills, teams, tools and most importantly – the CODE! Needless to say, it saves time and resources.
- Xamarin is integrated with SDKs of all of the different operating systems. You have the ability to utilize native controls that exist for the iPad, Android or Windows but only coded once.Linked files, conditional compilation, and portable class libraries make it possible for developers to share the code. The ability to reuse 60-90% of the code cuts the development time in half. That obviously saves time and money to both customers and service providing companies on the app’s multi-channel distribution. Additionally, a single codebase dramatically reduces costs for support and new features introduction.
- Xamarin supports iBeacons, Google Glass devices, Android Wear, Apple Watch and Microsoft Band. That is a great opportunity for developers to innovate with Xamarin.
- Windows Phone and Windows 8 development is natively supported by Visual Studio, and Xamarin is not involved here. Code can be shared between iOS, Android and Windows using Portable Class Libraries and proper application architecture.
- Xamarin TestCloud allows to automatically test iOS and Android apps immediately, on hundreds of devices, offering continuous integration, beautiful reports, test for fragmentation, and object-based UI testing.
- Xamarin allows building applications on C# and here are some reasons why C# is good for that: it is a simple, modern, general-purpose, object-oriented programming language. You can leverage all the power of strong typed language, lambdas, LINQ, async programming:
- Language integrated queries make it even more powerful. LINQ introduces standard, easily-learned patterns for querying and updating data, and the technology can be extended to support potentially any kind of data store. Visual Studio includes LINQ provider assemblies that enable the use of LINQ with .NET Framework collections, SQL Server databases, ADO.NETDatasets, and XML documents.
- The most powerful way to do parallel work is using Microsoft Task Parallel Library (TPL) and Xamarin supports it. The purpose of the TPL is to make developers more productive by simplifying the process of adding parallelism and concurrency to applications. Parallelism is crucial for responsive mobile application user interfaces. Unfortunately, existing approaches with callbacks and synchronization make the code less readable, complicated and confusing. Conversely, with the TPL you can focus on business logic and let the framework deal with an asynchronous code. In addition, the TPL handles partitioning of work, scheduling of threads on the ThreadPool, cancellation support, state management, and other low-level details.
- The C# language is great to develop async code in a nice and clean way.
- Today, nearly 500,000 developers are already using Xamarin to create amazing apps. And here are the companies that are taking advantage of Xamarin today:
- What experts are saying about Xamarin:
“We knew we had to cover a large demographic of mobile users—to do this we decided to adopt the Xamarin platform. Xamarin is the only platform that gives us what we needed. If you want to build high-quality native apps, then Xamarin is the only platform you should use.”
Mobile Director, Screenmedia
“As a QA Engineer, I am really enjoying Xamarin Test Cloud because it offers me a broad range of Android and iOS devices. It gives me the ability to have more test coverage and to discover issues sooner. And what’s particularly helpful is that Xamarin offers exceptional service and support that I can depend on every day.”
QA Engineer, Flipboard
“Xamarin’s architectural approach provides completely native UIs with better performance than other cross-platform techniques… Xamarin uses multifaceted technology built by a cohesive team with a solid long-term track record.”
Magic Quadrant for Mobile Application Development Platforms
“The broad collaboration between Microsoft and Xamarin is targeted at supporting developers interested in extending their applications across multiple devices. With Xamarin, developers combine all of the productivity benefits of C#, Visual Studio 2013 and Windows Azure with the flexibility to quickly build for multiple device targets.”
Corporate Vice President, Microsoft Corporation
Using Xamarin, we can write apps entirely in C#, sharing the same code on iOS, Android, Windows and Mac. Reuse favorite .NET libraries, and still easily incorporate platform-specific libraries and frameworks when we need to. It allows to produce fast, modern, reliable user-friendly apps faster and more cost effectively.