Upgrade to Pro — share decks privately, control downloads, hide ads and more …

C# Client to Cloud

Stuart Lodge
November 09, 2012

C# Client to Cloud

Talk given to London Azure community group
Covering Azure, WP, MonoTouch, MonoDroid, MvvmCross

Stuart Lodge

November 09, 2012
Tweet

More Decks by Stuart Lodge

Other Decks in Technology

Transcript

  1. 1. How can we eat? 2. Why do we eat?

    3. Where shall we have lunch? Survival, Inquiry, Sophistication “The History of every major Galactic Civilization tends to pass through three distinct and recognizable phases, those of Survival, Inquiry and Sophistication, otherwise known as the How, Why, and Where phases. For instance, the first phase is characterized by the question 'How can we eat?' the second by the question 'Why do we eat?' and the third by the question 'Where shall we have lunch?” ― Douglas Adams, The Restaurant at the End of the Universe
  2. Survival to Sophistication 486 – 100MHz “Optimal” 8 MB RAM

    13 floppy disks “Max” 2GB Hard Disk 28.8k US Robotics Modem 2 Cores – 1.5GHz 1 GB RAM OTA Upgrade 32GB Flash Disk + 7GB online 4G, WiFi, NFC, BlueTooth £1200 £400
  3. C# Cloud C# Clients C# Cloud-Client Communication C# Code Real

    App Examples Q&A On with some engineering…
  4. Shared code across mobile and cloud “low level”: compiles, typesafe,

    quick Native performance Native look and feel Testable Libraries: commercial and open – and nuget! Generics, Linq, async/await and the future… You already have: skills, tools, code Why C#?
  5. Hey Dude - Javascript – it’s Amazeballs Yes Yes Yes

    But… “Our biggest mistake was betting too much on HTML5” http://bitly.com/QhPf5L
  6. Storage – lots of it Connectivity – lots of it.

    Continuous. Global Processing – lots of it. Scalable. Burstable. Privacy/Security Quick updateability Toys – ACS, Queuing, CDN, TrafficManager, Caching, Services, … Why Azure?
  7. • Switch to ApiController – WebApi • Consider Azure Mobile

    Services • ‘Legacy’ WCF also fully supported Data Service: More Options * well…. almost fully ;) *
  8. Server: Storage: Code First Entity Framework Azure C# SDK Logic/Services:

    Custom C# Twitterizer Presentation: ASP .NET MVC (Json) WCF (oData) Recap: TweetPic Server Sophistication: Lots of C# Server technologies are available: nHibernate RavenDB Lucene.Net MVC Async (+SignalR) ServiceStack Azure - Access Signatures WebAPI OpenRasta Simple.Web Nancyfx FubuMvc ASMX and WebForms ProtocolBuf.Net …
  9. Sophistication: TweetPic Clients Service Consumption Business Logic UI Logic -

    ViewModels WP7 – XAML Win8 – XAML iOS – XIB/MT.D Droid – AXML Local Data/Services
  10. C# App Stack WP7 iOS Droid Win8 Data Access Business

    Logic Presentation Service Consumption Business Logic Local Data/Services UI Logic
  11. Example: Azure London Conference App Open source helps! • Xamarin

    Mobile API • Redth/Zxing control • Reactive.Net • …
  12. Mobile Services? WP7 iOS Droid Win8 Data Access Business Logic

    Presentation Service Consumption Business Logic Local Data/Services UI Logic Azure Mobile Services
  13. azure.com asp.net/web-api windowsazure.com/en-us/develop/mobile winX dev - create.msdn.com Mono - xaminars

    from xamarin.com PCL - blogs.mdsn.com/b/dsplaisted mvvm - github.com/slodge/mvvmcross For more inspiration: