hydrogen ellerslie dnug xamarin
DESCRIPTION
Presentation by Hydrogen to the Ellerslie .Net User Group on XamarinTRANSCRIPT
C# + Xamarin + VS.Net = cross-platform mobile app
awesomeness
Hydrogen Apps
Mobile app approaches
2
Hydrogen Apps
3
Silo
Source: http://channel9.msdn.com/Events/Build/2014/3-653
Hydrogen Apps
4
Write-once, run anywhere
Source: http://channel9.msdn.com/Events/Build/2014/3-653
Hydrogen Apps
5
Xamarin approach
Source: http://channel9.msdn.com/Events/Build/2014/3-653
Everything is awesome!
Hydrogen Apps
6
Platform specific APIs are exposed via .Net
iOS APIs – 100% coverage► Generates native ARM code indistinguishable from Xcode
Android APIs – 100% coverage ► JIT in Mono execution environment
APIs are C#-ified► Static typing► C# language features
How native is “native”
Hydrogen Apps
7
VS.Net – not actually required if just targeting Android/iOS
XamarinXamarin Studio IDE
VS.Net pluginsXamarin.iOS
Xamarin.Android
Xamarin build host on mac
Android SDKAndroid developer tools
Android debug bridge
Android virtual devices (emulators)
Mac OSXXcode
iOS Simulator
Stores► Google Play► iOS App Store► Windows/WinPhone App Store
Pieces to the puzzle
Demo8
Architecting for code reuse
9
Hydrogen Apps
10
Portable Class Libraries
PCL.csproj
Class1.cs
iOS.csproj
Android.csproj
WinPhone.csproj
iOS Views, etc
Droid Views, etc
WP Views, etc
Dll Reference
Hydrogen Apps
11
Linked Files
Class1.cs
iOS.csproj
Android.csproj
WinPhone.csproj
Class1.cs
Class1.cs
Class1.cs
iOS Views, etc
Droid Views, etc
WP Views, etc
Class1.cs compiled in app project
Hydrogen Apps
12
Shared.csproj
Shared Project
Class1.cs
iOS.csproj
Android.csproj
WinPhone.csproj
Class1.cs
Class1.cs
Class1.cs
iOS Views, etc
Droid Views, etc
WP Views, etc
Class1.cs compiled in app project
Hydrogen Apps
13
View Models
Model View ViewModel
Business Logic, Repositories, Models, etc
.Net, 3rd Party Frameworks
Xamarin.iOS
iOS Views
Xamarin.Android
Android Views
WinPRT
WinPhone Views
Unit tests
Bindings,Abstractions
Demo14
Hydrogen Apps
15
Xamarin.Forms
Shared C# Backend (Xamarin + .Net)
iOS Native View
Android Native View
WinPhone Native View
Shared C# Views (Xamarin.Forms)
Dynamically generates
Demo16
Hydrogen Apps
17
Xamarin Licensing► Starter (Free)► Indie ($299/year)► Business ($999/year)► Enterprise ($1899/year)
Get a Mac for iOS
Learn each platform► Before using abstractions► Know ins/outs, limitations► Easier to understand later
Xamarin community forums
Xamarin presentations forum► http://
forums.xamarin.com/categories/presentations
Sample apps► https://github.com/xamarin
Evolve 2014!► Oct 6th-10th, Atlanta
Xamarin University► Live online classes► Expert office hours
Where to start?
Hydrogen Apps
18
Questions