Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Introduction to XAMARIN
This is a continuation of the Windows 8 App Factor challenge material. See https://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.
- Visual Studio or Xamarin Studio
- 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.
Windows Phone | Use the XAML/Silverlight presentation layer, using Visual Studio or Blend’s UI designer |
Windows 8 | Use the Windows Store APIs to create a native user experience. |
iOS | Use the MonoTouch.UIKit APIs to create native-looking applications, optionally utilizing Apple’s Interface Builder. |
Android | 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.
C# language | 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. |
Compiler | 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. |
IDE tools | 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.
Comments
Anonymous
May 18, 2013
Why not create a single cross platform UIToolkit (style SWT)?Anonymous
May 23, 2013
@sternr, cross platform UI supports lowest common denominator and you lose the strengths of each platform. Use the native UI of each platform and common logic.