Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Building Native Cross-Platform Apps in C# with ...
Search
Greg Shackles
July 28, 2015
Technology
0
280
Building Native Cross-Platform Apps in C# with Xamarin
Greg Shackles
July 28, 2015
Tweet
Share
More Decks by Greg Shackles
See All by Greg Shackles
Building Modern Services with .NET Core 3 and gRPC
gshackles
0
170
Observability-Driven Development: What DevOps is Really About
gshackles
1
300
Monitoring Your Mobile Apps in the Wild
gshackles
1
100
Building Scalable Applications with the Actor Model
gshackles
0
650
Creating a Voice-Driven TV Remote with Azure and Alexa
gshackles
0
120
Build 2017 Recap for Xamarin Developers
gshackles
0
130
Going Serverless: Event-Driven Architecture Without The Infrastructure
gshackles
0
190
Evolve 2016 Redux
gshackles
0
150
Instrumenting Your Mobile Monitoring Strategy
gshackles
0
4.7k
Other Decks in Technology
See All in Technology
QAエンジニアがプロダクト専任で チームの中に入ると。。。?/登壇資料(杉森 太樹)
hacobu
PRO
0
230
Introducing RFC9111 / YAPC::Fukuoka 2025
k1low
1
230
隙間ツール開発のすすめ / PHP Conference Fukuoka 2025
meihei3
0
450
AI × クラウドで シイタケの収穫時期を判定してみた
lamaglama39
0
220
JAWS-UG SRE支部 #14 LT
okaru
0
100
「もっと正確に、もっと効率的に」ANDPADの写真書き込み機能における、 現場の声を形にしたエンハンス
andpad
0
100
嗚呼、当時の本番環境の状態で AI Agentを再評価したいなぁ...
po3rin
0
410
Flutterコントリビューションのススメ
d_r_1009
1
380
お試しで oxlint を導入してみる #vuefes_aftertalk
bengo4com
2
1.5k
コード1ミリもわからないけど Claude CodeでFigjamプラグインを作った話
abokadotyann
1
160
CDKの魔法を少し解いてみる ― synth・build・diffで覗くIaCの裏側 ―
takahumi27
1
150
Spring Boot利用を前提としたJavaライブラリ開発方法の提案
kokihoshihara
PRO
2
200
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
Music & Morning Musume
bryan
46
6.9k
Optimizing for Happiness
mojombo
379
70k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
Visualization
eitanlees
150
16k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
We Have a Design System, Now What?
morganepeng
54
7.9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Done Done
chrislema
186
16k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
Building Native Cross-Platform Apps in C# with Xamarin Greg Shackles
@gshackles
[email protected]
github.com/gshackles speakerdeck.com/u/gshackles
nycmobiledev.net @NYCMobileDev
gonemobile.io @GoneMobileCast
What is native?
The Anatomy of a Native App Native User Interfaces Native
API Access Native Performance
The Write Once, Run Anywhere Approach Lowest Common Denominator
The Xamarin Approach Native Apps, with Shared Code
Native Performance Xamarin.iOS does full Ahead Of Time (AOT) compilation
to produce an ARM binary for Apple’s App Store. Xamarin.Android takes advantage of Just In Time (JIT) compilation on the Android device.
TL;DR Anything you can do in Objective-C, Swift, or Java
can be done in C# or F# with Xamarin
Always Up To Date Same day support for all the
things
Always Up To Date
Distribute Everywhere
Your Friends Are Invited Too Json.NET Rx …and many more!
Code Sharing Techniques Because sharing is caring
File Linking Core Project iOS Project Core Code iOS-Specific Code
Android Project Core Code Android-Specific Code Windows Project Core Code Windows-Specific Code File Links
Shared Code Projects
Portable Class Libraries • One assembly • Multiple platforms •
Including: • Xamarin.iOS • Xamarin.Android • Xamarin.Mac
The Xamarin Platform A Whirlwind Tour
Development Environment Xamarin Studio Visual Studio Windows or Mac 2010,
2012, 2013, 2015
Visual Studio Integration
iOS Designer
Android Designer
Component Store
Xamarin.Forms Traditional Xamarin Approach Xamarin.Forms Shared UI Code
Xamarin.Forms: What’s Included? • 40+ Pages, Layouts, and Controls •
Build from code or XAML • Data Binding • Navigation • Animation • Dependency Service • Messaging Center
Xamarin.Forms: Pages Content MasterDetail Navigation Tabbed Carousel
Xamarin.Forms: Layouts Stack Absolute Relative Grid ContentView Scroll Frame
Xamarin.Forms: Controls ActivityIndicator BoxView Button DatePicker Editor Entry Image Label
ListView Map OpenGLView Picker ProgressBar SearchBar Slider Stepper TableView TimePicker WebView EntryCell ImageCell SwitchCell TextCell ViewCell …and more!
First Class F# Support
Razor Templating
Xamarin.UITest • Write UI tests in C# or F# •
iOS and Android (with shared test code) • Run on simulator and devices • Compatible with all apps • Native • Hybrid • Xamarin
Test Cloud: Test on Real Devices
None
None
None
Profiler
Android Player
• Live online classes • Office hours • Offline access
• Guest lectures • Certification
Let’s Code
Questions? Greg Shackles @gshackles
[email protected]
github.com/gshackles speakerdeck.com/u/gshackles