Upload
ben-henderson
View
107
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Slides from my "Beginner's Guide to Xamarin Development" session at Codestock 2013. Code from the sample app, YodaSays, can be found here: https://github.com/benhenderson/yodasays.
Citation preview
Beginner’s Guide to Mobile Development with
XamarinPresented by Ben Henderson
Partner & Senior Software Engineer
Friday, September 6, 13
@ben_hendersonFriday, September 6, 13
Xamarin FanboyFriday, September 6, 13
Certified! ;)Friday, September 6, 13
Overview
• Who are Xamarin?
• Xamarin’s Toolkit
• Xamarin’s Niche
• Hello DevLink - iOS and Android
• Cross Platform Sample
• Questions and Answers
Friday, September 6, 13
Who are Xamarin?
Friday, September 6, 13
Young company, experienced team
Miguel de IcazaCTO
Joseph HillCOO
Nat FriedmanCEO
Friday, September 6, 13
• 1999 Ximian - “The Mono Guys”
• 2004 Novell buys Ximian
• Sept. 2009 MonoTouch v1.0
• Early 2011 Mono for Android v1.0
• Feb. 2011 Attachmate buys Novell. Fires US workers, owns IP.
• May 2011 Xamarin is formed. Starting from scratch.
• July 2011 Xamarin and Novell reach IP agreement.
Friday, September 6, 13
Xamarin’s Toolkit
• C#
• Common IDE
• .NET Base Class Library
• Complete Access to Indigenous Frameworks
• Runtimes for iOS and Android
Friday, September 6, 13
Developer Tools
Friday, September 6, 13
PricingFriday, September 6, 13
Compiles to native appFriday, September 6, 13
Xamarin’s Niche
Friday, September 6, 13
Abstracted Experience
Native Experience
Less Complex More Complex
Friday, September 6, 13
It’s .NET!Friday, September 6, 13
iOS Demo
Friday, September 6, 13
iOS Resources
• Bryan Costanichhttp://www.apress.com/9781430231745
• Wally McClure, Craig Dunn, et al.http://www.wiley.com/WileyCDA/WileyTitle/productCd-047063782X.html
• Xamarin iOS docshttp://docs.xamarin.com/ios
• Evolve session videoshttp://xamarin.com/evolve/2013#ios
• Native iOS documentation
Friday, September 6, 13
Android Demo
Friday, September 6, 13
Android x86 / HAXM Emulator
• Xamarin Guidelineshttp://docs.xamarin.com/guides/android/deployment,_testing,_and_metrics/configuring_the_x86_emulator
• Intel HAXM Installerhttp://software.intel.com/en-us/articles/intel-hardware-accelerated-execution-manager
Friday, September 6, 13
Android Resources
• Wally McClure, Jonathan Dick, et al.http://www.wiley.com/WileyCDA/WileyTitle/productCd-1118026438.html
• Xamarin Android docshttp://docs.xamarin.com/
• Evolve session videoshttp://xamarin.com/evolve/2013#android
• Native Android documentation
Friday, September 6, 13
Cross Platform
• Native Experience on Many Platforms
• Shared Code
• Efficiencies from Common Core Framework, Language, and IDE
Friday, September 6, 13
Sample X-Platform App
Hai!
Friday, September 6, 13
WireframesFriday, September 6, 13
“Yoda Says” App
• iOS and Android Clients
• Shared Code - consume web service, persist data, model, and view model
• Platform Abstraction - create image
• Component Store - iOS progress HUD
• Open Source Code - TinyIoC, RestSharp, SimpleJSON
Friday, September 6, 13
Demo
Friday, September 6, 13
Project Structure
Friday, September 6, 13
Native and Shared Concepts
Friday, September 6, 13
Sample Interaction: Translation
Friday, September 6, 13
X-Platform Resources
• Greg Shackleshttp://shop.oreilly.com/product/0636920024002.do
• Field Service samplehttp://xamarin.com/prebuilt/fieldservice
• Evolve session videoshttp://xamarin.com/evolve/2013#cross-platform
• MvvmCross frameworkhttps://github.com/slodge/MvvmCross
• YodaSays source on GitHubhttps://github.com/benhenderson/yodasays
Friday, September 6, 13
Get Started Today!
• Download Xamarin.iOS and Xamarin.Android
• Download Xcode and “obtain” a Mac
• Start a 30 day trial
Friday, September 6, 13
Questions &Answers
Friday, September 6, 13
There is no more :(
Friday, September 6, 13