Вы находитесь на странице: 1из 17

!"#$%& ()$$* +,* -.

+/012
3$2 (1%+1$40$5 6"%
7"80/$ 9:;$//$,;$
lnLrcducLlcn Lc Hcblle
!
PcsL-PC devlces are Lhe fasLesL grcwlng and mcsL dlsrupLlve Lechnclcglcal lnncvaLlcn cf
cur Llme. SmarLphcne adcpLlcn ls happenlng Len Llmes fasLer Lhan Lhe PC bccm cf Lhe
80s, Lwc Llmes fasLer Lhan Lhe lnLerneL bccm cf Lhe 90s, and Lhree Llmes fasLer Lhan Lhe
recenL scclal neLwcrklng explcslcn
1
. SmarLphcne shlpmenLs ecllpsed PC shlpmenLs ln
less Lhan Lwc years, and sLarLed cuLselllng PCs Lwc Lc cne ln early 2012
2
. 1ableL grcwLh
ls happenlng aL an even fasLer pace, wlLh lPad adcpLlcn cuLpaclng Lhe lPhcne's grcwLh
raLe Lhree Lc cne
3
.
Hcblle scnware ls enabllng a new generaLlcn cf ccnLexL-aware appllcaLlcns LhaL were
ncL pcsslble ln Lhe pre-mcblle wcrld, Lransfcrmlng cusLcmer relaLlcnshlps and buslness
prccesses. ?cur smarLphcne ls always wlLh ycu: lL kncws where ycu are, lL has access Lc a
wealLh cf perscnal and ccrpcraLe daLa scurces, and lL drlves mcre
ccmmunlcaLlcn engagemenL Lhan prevlcus cnllne meLhcds97%
cf LexL messages are read vs 15% cf emall
4
. Successful buslnesses
are creaLlng mcblle-unlque experlences Lc enhance prcducLlvlLy
and enable new klnds cf engagemenLfrcm redefnlng reLall Lc
maklng Lhe full pcwer cf a ccmpany's backend ccmpuLlng lnfra-
sLrucLure avallable Lc emplcyees anywhere.
1he lmpacL cn buslness ls prcfcund. lacebcck experlenced a 54%
year-cver-year grcwLh ln mcblle acLlve users, whlch acccunL fcr
30% cf lLs year-cver-year revenue grcwLh
6
. 0.S. mcblle ccmmerce ls ncw grcwlng nearly
Lhree Llmes fasLer Lhan LransacLlcns frcm deskLcp PCs
7
.
Ccmpanles LhaL embrace mcblllLy Lcday have a vlLal cppcrLunlLy Lc expand Lhe value
and reach cf Lhelr buslness, whlle Lhcse LhaL are slcw Lc acL wlll lcse relevance as mcre
aglle ccmpeLlLcrs |ump ahead.
By 2016, 70% cf Lhe
mcblle wcrkfcrce wlll
have a smarLphcne,
and 90% cf enLerprlses
wlll have Lwc cr mcre
plaLfcrms Lc suppcrL
5
! "#$ &'()'#*+#, -.( /.0+1# 234#11#54#
lnLrcducLlcn Lc Hcblle
!"#$%& $(") "** +,-
.$/0&-12341"-567
helJ scles tecm, built
using cmcrin
0sers uemand haLlve App Lxperlences
wheLher accesslng pasL crder hlsLcry cn a sales call cr checklng Lhe schedule Lc caLch
Lhe nexL Lraln, users expecL mcblle scnware Lc make ccnLexLually-relevanL lnfcrmaLlcn
accesslble lnsLanLly, ln a fcrmaL LhaL Lakes full advanLage cf Lhe devlce's capablllLles and
fcrm facLcr. AppllcaLlcns LhaL can'L fulfll a deslred funcLlcn prcmpLly and lnLulLlvely
slmply dcn'L geL used.
1here are many facLcrs LhaL ccnLrlbuLe Lc wheLher cr ncL users engage wlLh an app,
lncludlng perfcrmance, rellablllLy, deslgn, and ease cf use. ln all cf Lhcse areas, a fully
naLlve appllcaLlcn has slgnlfcanL advanLages cver ncn-naLlve lmplemenLaLlcns.
behnin Native: 1bree lmpcrtant App Cbaracteristics
1. haLlve appllcaLlcns are bullL wlLh sLandard, naLlve user lnLerface ccnLrcls ln a
manner LhaL fully ccnfcrms wlLh each plaLfcrm's deslgn ccnvenLlcns.
2. haLlve appllcaLlcns cer cpLlmal perfcrmance, leveraglng plaLfcrm-level
hardware acceleraLlcn Lc dellver unmaLched respcnslveness.
3. haLlve appllcaLlcns have access Lc Lhe full specLrum cf funcLlcnallLy expcsed
by Lhe underlylng plaLfcrm and devlce, lncludlng plaLfcrm-speclfc capablllLles
such as sLylus suppcrL and face Lracklng.
uevlce plaLfcrm vendcrs are fercely engaged ln a baLLle cver markeL share. whaL ls
aL sLake here ls ncL |usL Lcday's smarLphcne and LableL revenue. 1he baLLle ls cver
capLurlng a vasL dlglLal eccncmy LhaL wlll be ccnducLed cn devlces used ln Lhe llvlng
rccm, wcrkplace, car, and even as apparel as new wearable devlce caLegcrles emerge.
1hls lnLense ccmpeLlLlcn beLween plaLfcrm vendcrs ls greaLly acceleraLlng lnncvaLlcn
devlces are beccmlng fasLer and smarLer, wlLh vendcrs addlng dlerenLlaLlng capabll-
lLles aL an asLcnlshlng pace. Buslnesses LhaL are qulck Lc lnLegraLe Lhese new capa-
blllLles ln Lhelr cusLcmer lnLeracLlcns and buslness prccesses ccmmand a slgnlfcanL
ccmpeLlLlve advanLage.
#
1he ulverse uevlce Landscape
1he mcblle ccmpuLlng landscape ls heLercgenecus and ls far mcre uld and fragmenLed
Lhan Lhe Lhe prlcr PC era. lrcm 2009 Lc 2012, Andrcld vaulLed frcm 4% smarLphcne markeL
share Lc a whcpplng 66%. whlle Andrcld dcmlnaLes ln devlce vclume, Apple remalns klng
ln user engagemenL wlLh lUS users spendlng cver Lwlce as much Llme cn devlce
8
.
ln crder Lc fcrmulaLe a susLalnable mcblle sLraLegy LhaL wlll cuLlasL Lhe laLesL Lrends,
ccmpanles need a crcss-plaLfcrm apprcach LhaL enables Lhem Lc Lake Lhe hlgh grcund
ln Lhe escalaLlng plaLfcrm wars.
lnLrcducLlcn Lc Hcblle
Clcbal SmarLphcne HarkeL Share By PlaLfcrm
S
h
a
r
e

c
f

C
l
c
b
a
l

0
n
l
L

S
a
l
e
s
Q3
2009
Q4
2009
Q1
2010
Q2
2010
Q3
2010
Q4
2010
Q1
2011
Q2
2011
Q3
2011
Q4
2011
Q1
2012
Q2
2012
Q3
2012
Q4
2012
Q1
2013
100%
90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
!"#$%&'
!"#$%
!"#$%&'(()
!"#$%&#
!""#$
Hicrcsch
Scurce: CarLner
CurrenL Crcss-PlaLfcrm Apprcaches
Because Lhe mcblle devlce landscape ls heLercgenecus and hlghly dynamlc, ccmpanles are
faced wlLh Lhe challenge cf reachlng mulLlple mcblle cperaLlng sysLems wlLh a slngle app.
0nfcrLunaLely, currenL apprcaches Lc crcss-plaLfcrm mcblle develcpmenL have glven Lhe
whcle ccncepL a bad name. LeL's Lake a mcmenL Lc examlne Lhe prcblems wlLh currenL
apprcaches.
$ "#$ &'()'#*+#, -.( /.0+1# 234#11#54#
write Apps 1bree 1imes
Amazlngly, cne cf Lhe mcsL ccmmcn
Lechnlques used by ccmpanles Lcday Lc
bulld mcblle apps fcr mulLlple mcblle
devlce caLegcrles ls Lc rewrlLe Lhe app
frcm scraLch fcr each
vendcr's mcblle cper-
aLlng sysLem.
Ccmpanles Laklng Lhls
"vendcr-speclfc sllc"
apprcach Lc mcblle
develcpmenL have Lc
ccpe wlLh separaLe
languages and Lccls, dlerenL Leams wlLh dlerenL experLlse, and Lhe
frlcLlcn cf havlng Lc lmplemenL every feaLure mulLlple Llmes. lf Lhey wanL Lc suppcrL any
cLher emerglng devlce plaLfcrmsuch as Samsung's 1lzenLhey'll have Lc repllcaLe Lhe
enLlre app agaln. Bulldlng appllcaLlcns ln each plaLfcrm's language and LcclseL ccmes
aL a greaL ccsL.
1be Haic 8cx" Apprcacb
AncLher meLhcd Laken by many crcss-
plaLfcrm framewcrk vendcrs ls Lhe
wrlLe-cnce-run-anywhere (wURA) apprcach.
1he ldea cf wURA app
develcpmenL ls LhaL ycu
wrlLe ycur app cnce, ln a
slngle ccdebase, and Lhen
drcp lL lnLc a "maglc bcx"
whlch adapLs Lhe app Lc
Lhe cperaLlng sysLem and
fcrm facLcr cf each devlce.
1hls apprcach ls famlllar Lc
pecple whc have experlence wlLh Adcbe Alr,
Java SwlhC, and cLher crcss-plaLfcrm LcclklLs.
ParLlcularly wlLh mcblle, users rely cn plaL-
fcrm-speclfc sLyllsLlc cues Lc gulde Lhelr lnLer-
acLlcns wlLh scnware. 1hese cues are sLrlpped
ln apps bullL wlLh "Haglc Bcx" Lccls. 1he resulL
ls a dlscnnanL, lcwesL ccmmcn dencmlnaLcr
user experlence LhaL LhreaLens user adcpLlcn and puLs Lhe buslness cb|ecLlves behlnd
Lhe app prc|ecL aL rlsk.
1he cverhead cf
Lhls apprcach
slcws lnncvaLlcn
whlch hurLs bcLh
buslnesses and
end users
AbsLracLlcn
framewcrks can'L
express Lhe paLLerns
and varlaLlcns cf
each plaLfcrm's
deslgn language
io5
App
objective-C
XCcde
Java
Lcllpse
Andrcid
App
C#
vlsual SLudlc
windcws
App
lnLrcducLlcn Lc Hcblle
%
Xamarln's 0nlque Apprcach
Uvervlew
Xamarln ls redefnlng crcss-plaLfcrm develcpmenL and enabllng Lhe besL cf bcLh
wcrldsprcvldlng Lhe advanLages cf naLlve 0l, access Lc devlce feaLures, and naLlve
perfcrmance ccupled wlLh Lhe Llme-Lc-markeL advanLages cf ccde sharlng and reuse.
Ccmpanles LhaL bulld mcblle scnware Lcday wlLh Xamarln achleve ccsL-eecLlve crcss-
plaLfcrm develcpmenL and have Lhe exlblllLy Lc handle any app use case and user
experlence requlremenL.
kamarin's new mcdel fcr crcss-platfcrm develcpment:
- Accelerate time tc market: Xamarln enables slgnlfcanL ccde reuse, reduclng Lhe
Llme and cverhead cf prcduclng rlch appllcaLlcns fcr mulLlple plaLfcrms.
- 5tart ncw witb existin teams: develcpers whc are aL hcme wlLh C# and vlsual
SLudlc are prcducLlve wlLh Xamarln frcm day cne. 1here's nc need Lc learn a new
prcgrammlng language cr hlre develcpers wlLh speclallzed experLlse.
- nain, native experiences: bulld rlch appllcaLlcns LhaL dellver cpLlmal per-
fcrmance and leverage every lasL lnch cf funcLlcnallLy expcsed by Lhe underlylng
plaLfcrm and devlce.
- lnterate witb existin enterprise arcbitecture: leverage .hL1's exLenslve
framewcrk cf llbrarles fcr calllng web servlces and lnLeracLlng wlLh daLa scurces,
and share Lhe same appllcaLlcn lcglc wrlLLen ln C# acrcss cllenL and server.
Kim Hacbcuall | Senlcr CapablllLy Hanager
!
1le resolts from oor new felJ scles cpp cre plenomencloor scles
people love tle cpp cnJ cre cble to ence costomers cnJ close
scles more efect|vely. Aey to tle cpps soccess |s tle becot|fol, fcst
oser exper|ence mcJe poss|ble by \cmcr|n.
#


& "#$ &'()'#*+#, -.( /.0+1# 234#11#54#
Xamarln's 0nlque Apprcach
haLlve CapablllLles
Xamarln apps lcck naLlve because Lhey are naLlve. 1hrcugh cur unlque blndlng Lech-
nclcgy, develcpers have ccmpleLe access ln C# Lc all cf Lhe same APls and user lnLerface
ccnLrcls used Lc bulld lUS, Andrcld and Hac apps ln Lhe plaL-
fcrm-speclfc languages. 1he full feaLure seL cf Lhe underlylng
plaLfcrm ls expcsed, lncludlng capablllLles llke face Lracklng,
calendar lnLegraLlcn, hlC and Ccre BlueLccLhprcvldlng
suppcrL fcr any app use case cr user experlence requlremenL.
Xamarln's blndlng Lechnclcgy makes lL pcsslble fcr Xamarln
Lc qulckly dellver suppcrL fcr new feaLures as Lhey are lnLrcduced ln Lhe devlce cper-
aLlng sysLems. Xamarln released updaLes fcr lUS 5.0, lUS 6.0, and lUS 6.1 all wlLhln 12
hcurs cf Lhelr publlc releaseprcvldlng full suppcrL fcr new plaLfcrm capablllLles such
as PassKlL and full ccmpaLlblllLy wlLh new devlce feaLures such as Lhe larger screen slze
cn Lhe lPhcne 5. ln Lhe hlghly ccmpeLlLlve mcblle appllcaLlcn landscape, users lncreas-
lngly expecL apps Lc suppcrL Lhe laLesL feaLures cn day cne. wlLh Xamarln, ycu never
have Lc wcrry abcuL geLLlng len behlnd.
Reach 2.6 Bllllcn uevlces wlLh LxlsLlng 1eams and Ccde
Xamarln prcvldes a frlcLlcnless gllde paLh fcr mlgraLlng exlsLlng C# skllls, Leams, Lccls
and ccde Lc Lhe wcrld's mcsL pcpular mcblle plaLfcrmsmaklng lL pcsslble Lc use C#
Lc reach 2.6 bllllcn devlces. Ccmpanles LhaL LranslLlcn
Lhelr exlsLlng .hL1 Leams Lc Xamarln achleve
mcblle prcducLlvlLy wlLhln a maLLer cf days.
Xamarln makes lL easy fcr any C# develcper
Lc beccme a mcblle develcper, ellm-
lnaLlng Lhe need Lc sLa mulLlple,
plaLfcrm-speclfc Leams.
Ccmpanles LhaL lnlLlally bullL apps
ln plaLfcrm-speclfc languages
are ncw Lurnlng Lc Xamarln as
a scalable scluLlcn fcr achlevlng
brcad reach acrcss plaLfcrms
wlLhcuL sacrlfclng naLlve user expe-
rlences and perfcrmance. 1hls ccm-
blnaLlcn cf rlch, fully naLlve devel-
cpmenL and exLenslve ccde sharlng
acrcss devlce plaLfcrms ls ncL pcsslble
wlLh any cLher crcss-plaLfcrm scluLlcn.
lf ycu can dc lL ln
Ub|ecLlve-C and
Java, ycu can dc lL
ln C# wlLh Xamarln
aaa
6)7)(+5
)58 9:
aaa
'
Xamarln's 0nlque Apprcach
Ccde Sharlng AdvanLages
when bulldlng scnware wlLh Xamarln, develcpers creaLe dlsLlncL naLlve user lnLerfaces
wlLh plaLfcrm-speclfc elemenLs, whlle sharlng Lhelr appllcaLlcn lcglcsuch as lnpuL val-
ldaLlcn, web servlce calls, daLabase lnLeracLlcns, and backend enLerprlse lnLegraLlcns
acrcss cperaLlng sysLems. Xamarln develcpers share an average cf 75% cf Lhelr ccde
acrcss plaLfcrms. 1hls means LhaL all cf Lhe ccde belcw Lhe user lnLerface layer ls wrlLLen
cnce and reusedreduclng Lhe surface area fcr LesLlng and leavlng less rccm fcr bugs.
Xamarln alsc glves develcpers a pracLlcal paLh fcr exLendlng Lhe reach cf Lhelr exlsLlng
.hL1 skllls and ccde Lc mcdern mcblle envlrcnmenLs. Ccmpanles LhaL have exlsLlng
deskLcp and web appllcaLlcns bullL wlLh C# use Xamarln Lc brlng much cf Lhe under-
lylng appllcaLlcn lcglc Lc Andrcld and lUS. Xamarln makes lL pcsslble fcr crganlzaLlcns
Lc leverage Lhelr exlsLlng C# lnvesLmenL lnsLead cf sLarLlng cver frcm scraLch.
Xamarln ls a parLlcularly ccmpelllng chclce fcr develcpers whc wanL Lc bulld mcblle
frcnLends fcr exlsLlng ASP.hL1 appllcaLlcns. ln addlLlcn Lc suppcrLlng all cf Lhe naLlve
ccnLrcls expcsed by Lhe underlylng plaLfcrm, Xamarln alsc makes lL easy fcr develcpers
Lc bulld hybrld appllcaLlcns LhaL dlsplay l1HL ccnLenL ln naLlve web vlew ccnLrcls. lL's
even pcsslble Lc use ASP.hL1's Razcr LemplaLlng englne ln a Xamarln mcblle appllcaLlcn
Lc generaLe l1HL cn Lhe cllenL. ln scme cases, lL's pcsslble Lc share Lhe same exacL daLa
mcdels beLween Lhe frcnLend and Lhe backend.
1hls lmmensely pcwerful blend cf naLlve plaLfcrm funcLlcnallLy and .hL1 llbrarles cers
develcpers Lhe perfecL LcclseL, acceleraLlng Llme-Lc-markeL and enabllng amazlng user
experlences.
&;)(#8 <== >.*+4
1be kamarin Apprcacb
wrlLe apps enLlrely ln C# wlLh
access Lc 100% cf each plaL-
fcrm's APls
uellver a devlce-speclfc naLlve
user lnLerface whlle sharlng an
average cf 75% app lcglc ccde
acrcss devlce plaLfcrms
Ccmplle apps as naLlve
blnarles fcr fasL perfcrmance
Native Ul Native Ul Native Ul
Xamarln PlaLfcrm
Uvervlew
Xamarln cers a ccmpelllng blend cf pcw-
erful develcper Lccls, elclenL crcss-plaLfcrm
ccde pcrLablllLy, full access Lc Lhe underlylng
devlce plaLfcrm APls, and a rlch eccsysLem
cf Lhlrd-parLy llbrarles. 1hcse characLerlsLlcs
make Xamarln a greaL chclce fcr mcdern
mcblle develcpers whc wanL Lc bulld suc-
cessful appllcaLlcns LhaL reach users cn every
ma|cr plaLfcrm.
Rlch luL SuppcrL
wlLh suppcrL fcr bcLh vlsual SLudlc and Xam-
arln's cwn Xamarln SLudlc luL develcpers
have everyLhlng Lhey need Lc deslgn, develcp,
debug and deplcy greaL mcblle apps.
Xamarln lnLegraLes wlLh vlsual SLudlc, maklng
lL pcsslble Lc bulld lUS and Andrcld apps ln
Hlcrcscn's preemlnenL develcpmenL envl-
rcnmenL. vlsual SLudlc users fnally have Lhe
freedcm Lc wrlLe ccde fcr all ma|cr plaLfcrms
under cne rccfuslng Lhe prcgrammlng language Lhey kncw and lcvewlLh ccnvenlenL
access Lc Hlcrcscn's eccsysLem cf exLenslcns and Lccls llke Resharper and 1eam lcun-
daLlcn Server.
Xamarln alsc ccmes wlLh Xamarln SLudlc, a pcwerful crcss-plaLfcrm luL fcr mcblle devel-
cpmenL cn Hac and wlndcws fcr develcpers whc dc ncL use vlsual SLudlc. Xamarln
SLudlc ccmblnes a sLrcng fcundaLlcn cf general-purpcse C#
prcgrammlng capablllLles, speclallzed mcblle develcpmenL
feaLures, and LlghL lnLegraLlcn wlLh Xamarln's framewcrks and
bulld Lcclchaln. 1he resulL ls an luL Lallcred fcr bulldlng apps
wlLh Xamarln, cerlng a gccd balance cf pcwer, exLenslblllLy,
perfcrmance, and ease cf use.
Xamarln's luL suppcrL lncludes a bullL-ln deslgn surface fcr
bulldlng Andrcld user lnLerfaces and a new lUS deslgner fcr
bulldlng laycuLs and ccnfgurlng LranslLlcns beLween vlews.
1hese deslgn Lccls leverage Lhe same ccnvenLlcns and fle fcrmaLs as Lhe deslgn Lccls
supplled by Apple and Cccgle. 1hey enable drag-and-drcp user lnLerface ccnsLrucLlcn
and are LlghLly lnLegraLed wlLh Lhe Xamarln CcmpcnenL SLcre and Lhe resL cf Lhe Xamarln
LcclseL.
( "#$ &'()'#*+#, -.( /.0+1# 234#11#54#
?)'+@# &A" B+58+5*, -.(
+C&D <58(.+8 E /)4
6)7)(+5 9.7=.5#5' &'.(#
?)'+@# 9.7=+1)'+.5 F#4;5.1.*$
-.( C='+7)1 <== G#(-.(7)54#
H+,I)1 &'I8+.
/.5.
9(.,,JG1)'-.(7 K7=1#7#5')'+.5 .- L?2F
6)7)(+5 &'I8+.
Superlcr Lccls lncrease
aglllLy and enable
develcpers Lc fccus
cn lnncvaLlcn and
quallLygreaL Lccls
lead Lc greaL apps
Xamarln SLudlc and Xamarln's vlsual SLudlc exLenslcns lnclude advanced debugglng
Lccls LhaL wcrk acrcss Lhe full specLrum cf suppcrLed plaLfcrms and envlrcnmenLs.
uevelcpers perfcrm lnLeracLlve debugglng cn an appllcaLlcn LhaL ls runnlng ln Lhe
Andrcld emulaLcr, Lhe lUS slmulaLcr, cr even dlrecLly cn hardware. Xamarln's debugger
suppcrLs all cf Lhe mcdern feaLures LhaL users expecLseLLlng breakpclnLs, lnpuLLlng
waLch expresslcns, and accesslng lccal sccpe varlables aL runLlme. Xamarln alsc sup-
pcrLs a number cf advanced debugglng feaLures, such as ccndlLlcnal breakpclnLs.
CcmpcnenL SLcre
1he Xamarln CcmpcnenL SLcre ls a searchable caLalcg cf free and pald ccmpcnenLs
LhaL add beauLlful 0l ccnLrcls, llbrarles, and 3rd parLy web servlces Lc apps wlLh a
few llnes cf ccde. lf an appllcaLlcn requlres ccmplex feaLures llke bar-ccde scannlng
cr a scphlsLlcaLed user lnLerface ccnLrcl llke a slgnaLure pad, develcpers can slmply
lnsLall Lhe deslred ccmpcnenLs and Lhen fccus cn wlrlng Lhem LcgeLher wlLh Lhelr cwn
appllcaLlcn-speclfc glue ccde.
Xamarln PlaLfcrm
)
*+ "#$ &'()'#*+#, -.( /.0+1# 234#11#54#
1here are a varleLy cf user lnLerface ccnLrcls avallable ln Lhe CcmpcnenL SLcre, such
as a graphlng vlew and a PaLh-lnsplred saLelllLe menu. Crcss-plaLfcrm llbrarles are alsc
avallable, maklng lL easy Lc lnLegraLe auLhenLlcaLlcn, scclal neLwcrk sharlng and cLher
pcpular SuKs lnLc apps. 1he CcmpcnenL SLcre alsc makes lL easy Lc lnLegraLe wlLh
hcsLed backend servlces llke Parse and Azure Hcblle Servlces.
1he CcmpcnenL SLcre ls bullL rlghL lnLc Xamarln SLudlc and Xamarln's vlsual SLudlc
exLenslcns, maklng lL pcsslble fcr develcpers Lc fnd, use, and manage ccmpcnenLs frcm
wlLhln Lhe luL. 1he Xamarln CcmpcnenL SLcre ls carefully curaLed by Xamarln, ensurlng
LhaL all ccmpcnenLs wcrk rellably, and lnclude dccumenLaLlcn and sample prc|ecLs LhaL
demcnsLraLe prcper use.
LnLerprlse Class SuppcrL, 1ralnlng, and Servlces
Xamarln has a Lhrlvlng eccsysLem cf suppcrL and servlces cerlngs LhaL LhaL accel-
eraLes app develcpmenL fcr mlsslcn-crlLlcal prc|ecLs. Xamarln's suppcrL cerlngs lnclude
respcnse SLAs, access Lc Lhe laLesL hcLfxes, Lechnlcal Lralnlng and access Lc rescurces
fcr ccde LrcubleshccLlng.
ln addlLlcn, Xamarln cers Lechnlcal Lralnlng ccurses LhaL help develcpers undersLand
ccre mcblle develcpmenL ccncepLs, Lhe nuances cf each devlce plaLfcrm, hcw Lc max-
lmlze ccde sharlng and cpLlmlze perfcrmance, amcng cLher Lcplcs.
CusLcmers can alsc Lap lnLc Lhe wcrldwlde neLwcrk cf Premler and AuLhcrlzed Xamarln
CcnsulLlng ParLners. 1he CcnsulLlng ParLners prcgram lncludes cver fny parLners LhaL
have frsL-hand experlence helplng cllenLs shlp greaL apps wlLh Xamarln. AddlLlcnally,
Xamarln cers a range ccnsulLlng servlcesdellvered by Xamarln Premler CcnsulLlng
ParLnersdeslgned Lc acceleraLe develcpmenL aL any sLage cf Lhe app llfecycle.
Xamarln PlaLfcrm
lunJcmentcls cnJ
4JvcnceJ trcining
clcsses proviJe
excellent preperction
for cmcrin Hobile
8&%&1,*&-
Certihcctions
lcw lL wcrks
Ccde Sharlng SLaLlsLlcs frcm Lhe lClrculL App
**
App ArchlLecLure
1he besL pracLlce when bulldlng mcblle appllcaLlcns wlLh Xamarln ls Lc lsclaLe ccre
appllcaLlcn lcglc ln a pcrLable layer cf plaLfcrm-neuLral ccde LhaL uses .hL1 framewcrks
and APls. 1he develcper Lhen bullds a separaLe user lnLerface fcr each plaLfcrm cn Lcp
cf Lhe shared ccde, uslng naLlve ccnLrcls and naLlve plaLfcrm APls LhaL Xamarln expcses
ln C#. when dcne prcperly, cnly a small amcunL cf plaLfcrm-speclfc ccde ls Lyplcally
needed Lc lmplemenL Lhe user lnLerface behavlcr fcr each plaLfcrm and blnd lL Lc Lhe
funcLlcnallLy frcm Lhe shared llbrary.
SLrucLurlng a Xamarln appllcaLlcn fcr maxlmum ccde reuse ls easy. 1here are a number
cf well-undersLccd deslgn paLLerns LhaL develcpers can adcpL Lc ensure LhaL Lhelr user
lnLerface layer ls cpLlmally deccupled frcm appllcaLlcn lcglc. Scme ccmmcn apprcaches
lnclude Hcdel vlew vlewHcdel (HvvH) paLLern endcrsed by Hlcrcscn cr Lhe mcre Lra-
dlLlcnal Hcdel vlew CcnLrcller (HvC) paLLern.
lndependenL analyses perfcrmed by Xamarln cusLcmers cer lnslghL lnLc Lhe amcunL
cf ccde LhaL can Lyplcally be shared acrcss plaLfcrms when bulldlng appllcaLlcns wlLh
Xamarln. 0slng an auLcmaLed Lccl LhaL measures ccde reuse, develcper lrank Krueger
deLermlned LhaL Lhe Andrcld, lUS, wlndcws R1 and Hac US X pcrLs cf hls scphlsLlcaLed
lClrculL appllcaLlcn share beLween 70 and 88% scurce ccde acrcss plaLfcrms.
App Lcglc 0ser lnLerface Ccde
*! "#$ &'()'#*+#, -.( /.0+1# 234#11#54#
lull APl ccverage
Xamarln prcvldes access Lc 100% cf Lhe naLlve APls avallable cn each mcblle plaLfcrm,
ensurlng LhaL develcpers aren'L ccnfned Lc an arblLrary subseL cf feaLures. 1he C#
blndlngs prcvlde 1:1 mapplngs Lc naLlve APls, whlle addlng suppcrL fcr feaLures llke
LlhQ, delegaLes, evenLs, and cLher ldlcms C# develcpers expecL.
lully LxLenslble
1he .hL1 base class llbrarles cer suppcrL fcr a wlde range cf ccmmcn cperaLlcns,
lncludlng neLwcrklng, daLa serlallzaLlcn and perslsLence, fle l}U, LexL prccesslng,
Lhreadlng, and mcre. BeLween pcrLable .hL1 llbrarles and plaLfcrm-speclfc llbrarles
wlLh C# blndlngs, Xamarln appllcaLlcn develcpers have access Lc an exLracrdlnarlly rlch
eccsysLem cf Lhlrd-parLy ccde.
1he Xamarln CcmpcnenL SLcre makes a Lremendcus range cf Lhlrd-parLy llbrarles and
SuKs avallable fcr drcp-ln adcpLlcn ln Xamarln prc|ecLs, buL lL's alsc very easy Lc gen-
eraLe Xamarln blndlngs fcr exlsLlng Lhlrd-parLy Java and Ub|ecLlve-C llbrarles. Xamarln
prcvldes Lccls, such as Ub|ecLlve Sharple, LhaL largely auLcmaLe Lhe prccess and gen-
eraLe hlgh-quallLy blndlngs LhaL are ldlcmaLlcally ccpaceLlc wlLh C#.
1here are alsc a grcwlng number cf llbrarles LhaL prcvlde unlversal C# absLracLlcn layers
cver plaLfcrm-speclfc capablllLles. Scme examples lnclude PushSharpa crcss-plaLfcrm
llbrary fcr push ncLlfcaLlcnand Xamarln's cwn Xamarln.Hcblle llbrarywhlch prc-
vldes crcss-plaLfcrm suppcrL fcr feaLures llke geclccaLlcn and Lhe sysLem address bcck.
lcw lL wcrks
!
\cmcr|n ofers tle best of cll worlJs. we Jel|ver performcnce-Jr|ven
nct|ve cpps tlct, ont|l \cmcr|n, were only poss|ble w|tl 0bject|ve-c
cnJ 1cvc. Slcr|n over 50,000 l|nes of coJe ccross plctforms |ves
os more t|me to spenJ on rect oser exper|ences.
#


Hatt Crccker | Senlcr Scnware Lnglneer
lcw lL wcrks
*#
PrcducLlcn-Prcven 1echnclcgy fcr Hlsslcn-CrlLlcal Apps
Xamarln ls bullL cn Lcp cf Hcncan cpen scurce lmplemenLaLlcn cf Lhe .hL1 runLlme
and framewcrk class llbrarles, and a C# ccmpller. Hcnc ls hlghly maLure wlLh cver a
decade cf lnncvaLlcn and successful prcducLlcn use ln a varleLy cf envlrcnmenLs, frcm
embedded devlces Lc enLerprlse backends. Xamarln's advanced ccmpller Lechnclcgy
uses hlghly scphlsLlcaLed Lechnlques Lc ensure cpLlmal perfcrmance and rellablllLy whlle
brlnglng Lhe pcwer and sLablllLy cf Hcnc Lc lUS, Andrcld, and Hac devlces.
llgh Perfcrmance and Lcw Hemcry lccLprlnL
1he Hcnc runLlmeccmblned wlLh Xamarln's advanced ccmpllaLlcn Lechnclcgycers
excellenL perfcrmance. Xamarln appllcaLlcns handle ccmpuLaLlcnally-lnLenslve cpera-
Llcns aL speeds ccmparable Lc LhaL cf lUS and Andrcld appllcaLlcns bullL wlLh Ub|ecLlve-C
and Java. ln facL, lnLernal Xamarln benchmarks suggesL LhaL Xamarln C# ccde can cnen
cuLperfcrm equlvalenL Andrcld Java ccde.
Xamarln prcvldes rlch suppcrL fcr Lhreadlng and parallellsm, allcwlng develcpers Lc bulld
appllcaLlcns LhaL uLlllze Lhe llmlLed prccesslng pcwer cf mcblle devlces as eecLlvely
as pcsslble. By uslng Lhe sLandard user lnLerface ccnLrcls supplled by Lhe underlylng
plaLfcrm, appllcaLlcns bullL wlLh Xamarln achleve cpLlmal respcnslveness and benefL
frcm plaLfcrm-level suppcrL fcr hardware-acceleraLed renderlng.
Xamarln's CcmpllaLlcn 1echnclcgy
0nllke cLher crcss-plaLfcrm framewcrks, Xamarln apps are ccmplled as naLlve blnarles,
ncL lnLerpreLed. 1hls resulLs ln hlgh perfcrmance apps under even Lhe mcsL demandlng
scenarlcs llke ccmplex daLa vlsuallzaLlcns and hlgh frame-raLe slmulaLlcns.
Xamarln.lUS uses Ahead cf 1lme (AU1) ccmpllaLlcn, whlch preempLlvely ccmplles an
appllcaLlcn dcwn Lc a naLlve ARH execuLable durlng Lhe bulld prccess. when a C# appll-
caLlcn ls bullL wlLh full AU1 ccmpllaLlcn, Lhe cuLpuL ls an archlLecLure-speclfc blnary
execuLable LhaL ccnLalns nc byLeccde and dces ncL requlre Jl1 ccmpllaLlcn when lL
runs. 1he Xamarln.lUS ccmpllaLlcn Lcclchaln uses Lhe LLvH cpLlmlzlng ccmpller, Lhe
same ccmpller LhaL Apple shlps ln Lhe clclal lUS SuK. 1he user's appllcaLlcn ccde, Lhe
*$ "#$ &'()'#*+#, -.( /.0+1# 234#11#54#
ccre cf Lhe Hcnc runLlme, and Lhe framewcrks and llbrarles cn whlch Lhe appllcaLlcn
depends, are all sLaLlcally ccmplled lnLc Lhe blnary as naLlve ccde. lrcm Apple's per-
specLlve, an lUS appllcaLlcn bullL wlLh Xamarln ls |usL llke any cLher naLlve appllcaLlcn
LhaL runs cn Lhe plaLfcrm.
Andrcld has lLs cwn runLlme envlrcnmenL called ualvlk, whlch ls used Lc execuLe ccn-
venLlcnal Java-based Andrcld appllcaLlcns. Huch cf Andrcld's plaLfcrm-speclfc func-
LlcnallLy ls made accesslble Lhrcugh Java APls LhaL are Lled Lc Lhe ualvlk envlrcnmenL.
Xamarln.Andrcld appllcaLlcns use Lhe Hcnc and ualvlk runLlmes aL Lhe same Llme,
allcwlng develcpers Lc Lake advanLage cf Lhe full range cf funcLlcnallLy cered by bcLh
envlrcnmenLs. Hcnc lLself cperaLes cn Andrcld much as lL wculd ln any cLher ccm-
puLlng envlrcnmenLlL uses sLandard Hcnc Jl1 ccmpllaLlcn. lully LransparenL lnLer-
acLlcn beLween Hcnc and ualvlk ls made pcsslble by leveraglng sLandard Java haLlve
lnLerface (Jhl) calls. Andrcld's cpen plaLfcrm mcdel enables Xamarln Lc leverage Lhe full
pcwer cf Hcnc whlle prcvldlng deep lnLercperablllLy wlLh Lhe plaLfcrm's naLlve devel-
cpmenL sLack. As a resulL, Xamarln appllcaLlcns run |usL llke regular Java-based Andrcld
appllcaLlcns, buL wlLh full access Lc all cf Lhe funcLlcnallLy prcvlded by Hcnc.
lcw lL wcrks
!
0or costomers rely on nct|oncl lnstroments for tle|r m|ss|on- cr|t|ccl
systems, cnJ we |n torn rely on \cmcr|n to extenJ oor ccpcb|l|t|es to
mob|le Jev|ces. \cmcr|n encbleJ oor en|neer|n tecm to become
nct|ve mob|le Jevelopers clmost overn|lt.
#


bavid fuller | vP, AppllcaLlcn and Lmbedded Scnware R8u
1he lcrmula fcr Hcblle Lxcellence
*%
Hcblle Lechnclcgy ls reshaplng Lhe way LhaL pecple ccnnecL, wcrk, and play. lL enables
new klnds cf cusLcmer engagemenL, makes dlsLrlbuLed wcrkfcrces vasLly mcre elclenL,
and furLher lubrlcaLles Lhe cw cf daLa LhaL serves as Lhe llfeblccd cf cur lnfcrmaLlcn
eccncmy.
CcnnecLed devlces have lmpllcaLlcns fcr ccmpanles acrcss Lhe
enLlre specLrum, ncL |usL Lhcse ln Lhe Lechnclcgy lndusLry. 1he
lmpcrLance cf mcblle Lechnclcgy wlll ccnLlnue Lc lncrease as
hardware lmprcvemenLs and decllnlng ccsLs prcpel us lnLc a
wcrld where ccnnecLlvlLy ls presenL ln everyLhlng arcund us.
we're aL Lhe sLarL cf a vlrLucus cycle where Lhe grcwlng per-
vaslveness cf mcblle lnLegraLlcn ls maklng mcblle Lechnclcgy
mcre vlLal and lndlspensable, drlvlng mcre adcpLlcn and mcre
lnLegraLlcn. hc ccmpany can acrd Lc fall behlnd.
Ccmpanles LhaL have adcpLed a Xamarln-based mcblle
sLraLegy are wlnnlng, rapldly dellverlng quallLy, plaLfcrm-spe-
clfc experlences Lc cusLcmers, emplcyees and parLnersapps
LhaL Lake full advanLage cf Lhe laLesL capablllLles acrcss a heL-
ercgenecus devlce landscape. LnLerprlses LhaL are sLlll fcrmulaLlng Lhelr mcblle sLraLegy
can rely cn Xamarln Lc acceleraLe Lhelr ablllLy Lc mcve frcm sLraLegy Lc Lhls level cf
mcblle excellence.
M#-#(#54#,
1
hLLp:}}blcg.urry.ccm}bld}88867}lUS-and-Andrcld-AdcpLlcn-Lxplcdes-lnLernaLlcnally
2
hLLps:}}lnLelllgence.buslnesslnslder.ccm}smarLphcnes-cuLpaclng-pcs-Lwc-Lc-cne-2012-11
3
hLLp:}}www.slldeshare.neL}klelnerperklns}kpcb-lnLerneL-Lrends-2013
4
hLLps:}}www.dlglLalmarkeLlngasscc.ccm}scclal-medla}clcser-mcblle-markeLlng}
5
hLLp:}}www.garLner.ccm}Lechnclcgy}research}sympcslum-keyncLes}
hLLp:}}www.crn.ln}news}scnware}2012}10}26}garLner-Lwc-Lhlrds-cf-enLerprlses-wlll-adcpL-mcblle-devlce-managemenL-scluLlcn
6
hLLp:}}Lechcrunch.ccm}2013}05}01}facebcck-sees-26-year-cver-year-grcwLh-ln-daus-23-ln-maus-mcblle-54}
(lacebcck Q1 2013 earnlngs)
6
hLLp:}}au.buslnesslnslder.ccm}mcblle-ls-Laklng-mcre-e-ccmmerce-2013-5
8
hLLp:}}www.neLmarkeLshare.ccm}
Buslnesses ln Lhe
mcdern mcblle era
ncw have a scluLlcn
LhaL prcvldes reslllency
agalnsL lndusLry
changes, whlle
prcvldlng Lhe exlblllLy
Lc leverage Lhe
emerglng capablllLles
cf Lcp mcblle devlces
AbcuL Xamarln
6)7)(+5 N), -.I58#8 +5 OP!! 0$ ?)' Q(+#87)5 )58 /+*I#1 8# K4)R)D
'#4;5.1.*$ @#'#()5, N+'; ) ,I44#,,-I1 '()4S (#4.(8 +5 #5'#(=(+,#
schware. 1he ccmpany empIcys a passicnate team cf 70 highIy
skiIIed schware engineers, has a rcbust training and deveIcper cerJ
ticaticn prcgram, and wcrId-cIass suppcrt and dccumentaticn.
6)7)(+5T, N.(18N+8# =)('5#( 5#'N.(S +, 4.7=(+,#8 .- .@#( UP *1.0)1
,$,'#7 +5'#*()'.(,D 5)'+.5)1 )58 (#*+.5)1 4.5,I1'+5* 4.7=)5+#,D )58
8+*+')1 )*#54+#, N;. ;)@# 8##= #3=#(+#54# 0I+18+5* #5'#(=(+,# )58
4.5,I7#( )==, N+'; 6)7)(+5L
FuIIIing the prcmise cf crcss-pIatfcrm mcbiIe deveIcpment withcut
4.7=(.7+,#,D 6)7)(+5T, 0(#)S';(.I*; =(.8I4', ;)@# )''()4'#8 )
4.77I5+'$ .- .@#( VUPDPPP 8#@#1.=#(,L 6)7)(+5 '.8)$ ;), .@#(
17,000 paying custcmers, incIuding Hicrcsch, KimberIy-CIark,
91#)( 9;)55#1D &4;+581#(D /4"#,,.5D B.,4;D W)11+0I('.5D 9.*5+R)5'D
X+'WI0D M8+.D )58 Y#0/AL

Вам также может понравиться