Cross-platform mobile development using Xamarin and C#

Post on 07-May-2015

1,255 views 1 download

description

Recent increase in demand of the cross-platform mobile development born a few great technologies. Some of them are good, others are not, but just few of them provides native platform experience. Hybrid applications work great in this case. Taking into account responsive design makes it even better. However, users do not need “just functionality” and responsive layout any more. They need, even demand great user experience, which should be attractive, convenient, powerful, responsive and unique. During this session, I want to tell you how Xamarin and Mono help to deliver native experience for iOS, Android, Windows Phone platforms having most of your code reused between platforms and written in C#. This session will give you an overview of cross-platform development basics for iOS, Android and Windows Phone platforms using Xamarin, .NET and C# You will know: - Xamarin concept. MonoTouch & MonoDroid - Developing under Windows & Mac. Environment requirements. - Visual Studio vs Xamarin Studio - MvvmCross libraries - Utilization of Portable Class Libraries & Project Links for better code sharing

transcript

Cross Platform Mobile Development using Xamarin and C#Develop your iOS, Android, Windows Phone apps with .NET and C# Alexey Strakh, EastBanc Technologies

Agenda

•Mono and Xamarin•Cross Platform Environment and IDEs•Why C#?• Share your code•Automated UI Testing

The “Build Apps Multiple Times” Approach

• Platform-specific• Multiple codebases• Slow innovation• Expensive

The “Write-Once-Run-Anywhere” Approach

• Poor user experience• Not Complete API Coverage• High abandonment rates

The “Write Cross Platform” Approach

Xamarin

• Native UI• Native Performance• Full API Coverage• Shared codebase• Re-use skills, teams, tools and CODE

DEMO

“Hello World” app for iOS, Android and Windows Phone

How it works

•Xamarin.iOS and Xamarin.Android•Ahead of Time Compiler for iOS•Compile and Link for Android•Windows Phone & Windows 8

Xamarin exposes 100% of the native APIs for iOS and Android

Anything you can do in Objective-C or Java can be done in C# with Xamarin

100% API Coverage

Native SDK Bindings

Cross Platform Environment•Windows 8•Mac OS X

IDEs

•Xamarin Studio•Visual Studio Nuget,

Resharper, Component Store ALM (TFS)

Why C#?

Simple Http Request

Why C#

•C# Syntax•LINQ•Task Parallel Library •Async

Share your code

•Linked files•Conditional compilation•Portable Class Libraries

Share your code approach

DEMO

Share your code between iOS, Android and Windows Phone app

Model-View-ViewModel

“Digitize” your view:

• Temperature• Date• Weather Image• Wind Speed• Actions

iPhone Android Windows Phone Mvvm

MvvmCross

•Mvvm•Mvvm Cross Platform Framework•Databinding for Android (AXML) and iOS (XIB)

•Plugins (Dialogs, Emails, Location, etc)

DEMO

Share even more code. MvvmCross

Google Glass• Xamarin.Android supports Google Glass devices

• Glass Development Kit (Sneak Peek) at the Component Store

Xamarin TestCloud

Automatically test your iOS and Android apps

• Start immediately• Hundreds of devices• Continuous Integration• Beautiful reports• Test for fragmentation• Object-based UI testing

Who uses Xamarin?

Useful Links

• Xamarin Website http://xamarin.com• MvvmCross Jump Start https://github.com/MvvmCross/MvvmCross/wiki• Test Cloud http://xamarin.com/test-cloud• Google Glass Xamarin Component https://components.xamarin.com/view/googleglass

Thank you! Questions?

Alexey Strakh@alexeystrakhhttp://strakh.comastrakh@eastbanctech.com

http://eastbanctech.com http://xamarin.com http://east13.gomodev.com http://drmtm.us