This session talks about evolution of Mono and Xamarin and some pretty cool demo of how to leverage your .NET skills to develop iPhone and Android applications.
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Introducing Mono & Xamarin: Cross-Platform Mobile Development
1. INTRODUCING MONO & XAMARIN
BY
Rupreet Singh Gujral (rupreetg@outlook.com)
Product Development / Architect / Entrepreneur
2. AGENDA
• What is Mono & Xamarin?
• History and evolution of Mono & Xamarin
• Mono compatibility with .NET
• The magic behind running C# on iPhone and Android
• Demo: Creating a simple Android App using VS2012 and Xamarin
Studio
3. WHAT IS MONO/XAMARIN?
• Mono is an open source implementation of Microsoft's .NET Framework based on the ECMA
standards for C# and the Common Language Runtime (1)
• Runs on multiple platforms - Linux, OS X, BSD, iPhone, Android, PlayStation 3, Wii, Xbox 360, and
Microsoft Windows, including x86, x86-64, ARM, s390, PowerPC, SPARC, IA64, MIPS and much
more (1)
• Multiple languages - Develop in C# 5.0 (including async, LINQ and dynamic), VB 8, Java, Python,
Ruby, Eiffel, F#, Oxygene, and more (1)
• Xamarin is the company sponsoring mono development and support. Commercial products based
on mono are MonoTouch and MonoAndroid for developing cross platform mobile applications
(1) [source: www.mono-project.com]
4. HISTORY AND EVOLUTION OF MONO
• Mono started in July 2001 as an open source project
• Released v1.0 for mono in June 2004
• Full .NET 2.0 support and C# 3.0 in mono v2.0 in 2008
• Released moonlight (Silverlight for mono) in mono v2.6 in 2009
• Full .NET 4.0 support in mono v2.8 in 2010
• F#, IronRuby, IronPhyton support in v2.10 in 2011
• C# 5.0 support in mono v3.0 in 2012
5. HISTORY AND EVOLUTION OF XAMARIN
• Xamarin released v1.0 MonoTouch in 2009
• iPAD support in v2.0 MonoTouch in 2010
• iPhone 4 support in v3.0 MonoTouch in 2010
• Most of the iOS API support in v5.0 MonoTouch in 2011
• Xamarin Studio (v6.0 MonoTouch) introduced in 2013
6. MONO COMPATIBILITY WITH .NET
• Mono supports everything till .NET 4.0 except WPF, WWF and limited
WCF
• To verify if your .NET application is compatible with mono, run Mono
Migration Analyzer
7. THE MAGIC BEHIND RUNNING C# ON IPHONE
MonoTouch
Mono Framework
iOS SDK
Framework
Calls
Native
Bindings
iOS Operating System
C# Class
MonoTouch DLL
Mono Compiler
Native ARM code
8. THE MAGIC BEHIND RUNNING C# ON ANDROID
MCW: Mono Callable Wrapper
ACW: Android Callable Wrapper
Linux Kernel
Mono VM Dalvik VMACW
.NET API
Android
Binding
Android.* Java.*
(JNI)
MCW
9. DEMO
• Let’s create a simple app for iOS and Android
• UI designing in Xamarin Studio for both platforms
• Code sharing across platforms
• Seamlessly debug application in Xamarin Studio and Visual Studio
10. Q&A
Aim and shoot your questions!
Image source: http://egamer.co.za/2011/07/review-shadows-of-the-damned/