Introduction to XAMARIN
This is a continuation of the Windows 8 App Factor challenge material. See http://www.windows8appfactor.com
Key Facts In short, XAMARIN is about writing code in one language to support the major mobile platforms.
- Created by the engineers that created Mono and MonoTouch
- Leverages cross-platform implementations of .NET
- Consists of a community of 314,588 developers.
- All about cross-platform
- Support iOS, Android, Mac and Windows all in C#.
- Reuse existing code
- Use your favorite .NET libraries in Xamarin apps.
- Easily use third-party native libraries and frameworks.
- 2 IDEs
- Visual Studio or Xamarin Studio
- Xamarin Studio is a fully-featured IDE that is built for mobile app development.
- Access to native APIs
- Allows you to create native apps with device-specific experiences.
One language, not 3 is the goal of XAMARIN Traditionally this means using each platform’s provided technology and SDK, i.e. Objective-C for iOS, Java for Android and .NET for Windows.
- Reasons why you should care
- Realize tremendous code sharing across mobile platforms
- Reduce your time to market
- Leverage existing talent
- Meet customer demand for multiple device mobile access
- Reduce cross-platform complexity
- You can do both productivity apps and game apps
- Works best when the focus is on productivity and utility (non-game applications).
- Core strength of XAMARIN
- Implement native user interfaces specifically for each platform
- But still be able to share most of the non-user interface code and get the best of both worlds
- Write your data storage and business logic code once
- Leverage native UIs on each platform
Key Facts Each of the core platforms that are supported has custom tooling.
||Use the XAML/Silverlight presentation layer, using Visual Studio or Blend’s UI designer
||Use the Windows Store APIs to create a native user experience.
||Use the MonoTouch.UIKit APIs to create native-looking applications, optionally utilizing Apple’s Interface Builder.
||Use Android.Views to create native-looking applications, taking advantage of Xamarin’s UI designer
The major pieces The interesting news here is that XAMARIN is capable of creating a native app.
||Allows you to use a familiar syntax and sophisticated features like Generics, Linq and the Parallel Task Library.
|Mono .NET framework
||Provides a cross-platform implementation of the extensive features in Microsoft’s .NET framework.
||Depending on the platform, produces a native app (eg. iOS) or an integrated .NET application and runtime (eg. Android).
The compiler also performs many optimizations for mobile deployment such as linking away un-used code.
||The Xamarin Studio IDE and the Xamarin plug-in for Visual Studio allow you to create, build and deploy Xamarin projects.
More to come I will take this a step or 2 further in the next few days.