Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Xamarin and Azure Mobile Services
1. PRESENTS
PSG College of Technology, Coimbatore April 22, 2017
Powered by Brought to you by
GLOBAL AZURE BOOTCAMP 2017
Kuppurasu Nagaraj
Azure MVP, BizTalk360
Getting Started with Xamarin and Azure
Mobile Services
2. Powered by Brought to you by
2
We Apps!
189M
downloads
a day
200mins on
phone
127mins in
apps
13. Powered by Brought to you by
• Extremely powerful
• Flexible
• Easy Tables
• App Service
• C# SDKs available everywhere:
• C#- iOS, Android, & Windows with Xamarin
• C# clients, written by C# developers (open source)
• C# backend with ASP.NET
Why Azure?
14. Powered by Brought to you by
Shared C# codebase • 100% native API access • High performance
iOS C# UI Windows C# UIAndroid C# UI
Shared C# Mobile C# Server
Linux/Mono
CoreCLRAzure
Shared C# Client/Server
Xamarin Apps + Backend Services
15. Powered by Brought to you by
RESTAPI
Offline
sync
Facebook Twitter Microsoft Google Azure
Active
Directory
Azure Mobile Apps
WindowsAndroid
Chrome
iOS
OSX
In-AppKindle
Backend code
SQL MongoTables O365 API Apps
Offline Sync
16. Powered by Brought to you by
Create a Mobile Service
MobileService = new MobileServiceClient(
"https://myapp.azurewebsites.net");
Unhappy Users
Unhappy Developers
Increase in Abandoned Apps
Limited to what is implemented
UI build natively per platform, leveraging C#
C# + XAML
C# + XML
C# + XIB
One shared app logic code base, iOS, Android, Mac, Windows Phone, Windows Store, Windows
Xamarin recently introduced Xamarin.Forms a new library for cross platform user interface. We will touch up on this later, but this enables you to be highly productive, share code, but build out UI on each platform and access platform APIs.
With Xamarin.Forms you now have a nice Shared UI Code layer, but still access to platform APIs
You can start from native, pick a few screens, or start with forms, and replace with native later
Inside of a page are layouts
A lot of options from something simple like a stack panel to complex and powerful grids
Extremely powerful
You can do almost anything your backend would ever need to do with Azure. Data storage, authentication/authorization, push notifications, custom APIs, blob storage, etc.
Flexible
Need something lightweight? Azure is there.
Need something robust and powerful? Azure is there.
C# clients
I’m a frontend developer, I care a lot about how easy this makes MY job (selfish)
Many C# clients are written by Java developers, etc.
Easy to use C# client
Abstracts away much of pain of using a RESTful API
C# Features
Async / Await / TPL
Uses C# idioms
Properties, Fluent API
Seems obvious, but not always true (first class citizen)
With Xamarin it just isn’t your front end in C# it is your full backend server as well. With Azure or even on Linux running Mono or the CoreCLR your app is fully C# end to end!