Day 1: Xamarin Basics
using Xamarin you can create truly Native apps with Native performance and look and feel. More than 80% of the code may be shared among iOS, Android and windows platforms using concepts like Portable libraries / shared files / and shared projects. Xamarin forms provides a very innovative way to even create UIs using single code-base yet preserving the look and feel of each of native platforms.
- Fully native apps- Native UI, Native Performance
- Anything you can do in Objective-C and Java can be done
- Re-use existing skills, teams, tools and code
- Share on average 75% source code across platforms
How does it work?
- Built on top of Mono – Mono is open-source version of the .NET Framework
- iOS – Xamarin’s Ahead-of-Time ( AOT) Compiler compiles Xamarin.iOS applications directly to native ARM assembly code
- Android – Xamarin’s compiler compiles down to Intermediate Language ( IL), which is then JITted to native assembly.
- Xamarin applications runtime automatically handles memory allocation, garbage collection, underlying platform interop, etc
What is it?
- Xamarin Mobile Profile – A subset of the .NET BCL. This profile has been created specifically for mobile applications
- Packaged in the MonoTouch.dll (for iOS) and Mono.Android.dll (for Android)
- In addition to the BCL, these .dlls include wrappers for nearly the entire iOS SDK and Android SDK that allows to invoke the underlying SDK APIs directly from C#.
- Either using
- portable libraries
- shared files / projects
- Android – Android specific coding
- iOS – iOS centric coding