Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
ReactiveProperty で Xamarin アプリの作り方が変わった
Nobuhiro Ito
January 28, 2017
Programming
3
1.4k
ReactiveProperty で Xamarin アプリの作り方が変わった
2017/01/28(Sat) Japan Xamarin User Group Conference #22
Nobuhiro Ito
January 28, 2017
Tweet
Share
More Decks by Nobuhiro Ito
See All by Nobuhiro Ito
iseebi
0
85
iseebi
1
340
iseebi
0
5.6k
iseebi
2
1.4k
iseebi
0
410
iseebi
0
340
iseebi
3
3.8k
iseebi
0
3.9k
iseebi
1
1.4k
Other Decks in Programming
See All in Programming
mackee
0
550
hanasuke
1
410
gernotstarke
0
380
grapecity_dev
0
170
heistak
2
130
temoki
2
220
suzukiot
0
250
grapecity_dev
1
190
bells17
0
360
manfredsteyer
PRO
0
250
yoshinoriiiii
0
110
legalforce
PRO
1
700
Featured
See All Featured
addyosmani
1346
190k
roundedbygravity
242
21k
cromwellryan
104
6.1k
shpigford
369
42k
lara
590
61k
akmur
252
19k
jmmastey
10
610
lynnandtonic
272
16k
holman
288
130k
smashingmag
230
18k
chriscoyier
145
20k
chrislema
173
14k
Transcript
3FBDUJWF1SPQFSUZͰ 9BNBSJOΞϓϦͷ࡞Γํ͕มΘͬͨ /PCVIJSP*UP
!JTFFCJ /PCVIJSP*UP 'FOSJS*OD .PCJMF"QQMJDBUJPO&OHJOFFS IUUQJTFFCJIBUFOBCMPHDPN
݄ େࡕ͔Β౦ژసۈ ౦ژΤϯδχΞνʔ ϜͷͱΓ·ͱΊ
ͱ͜ΖͰ
Βաڈ .WWN$SPTTʹ ྗΛೖΕ͍ͯͨ
IUUQTTQFBLFSEFDLDPNJTFFCJYBNBSJOTUVEJPEFIB[JNFSVTUPSZCPBSEQMVTBVUPMBZPVU
IUUQTTQFBLFSEFDLDPNJTFFCJYBNBSJOQMVTNWWNDSPTTEFUJNVLBJGBZBUVUFNJUB
None
େ͖ͳมԽͷ͋ͬͨͩͬͨ
9BNBSJOങऩ
9BNBSJOແঈԽ ˞ͨͩ͠اۀ7JTVBM4UVEJP͔.4%/ͷ4VCTDSJQUJPO͕ඞཁ
͕࣌ 9BNBSJOʹ͍͍ͭͨ w ࣄྫ͕૿͑ͨ w ্͕͕ͬͨ w ରԠ͢ΔϑϨʔϜϫʔΫ૿͑ͨ
ωΠςΟϒք۾Ͱ ৽ͨͳಈ͖͕
IUUQTUIMJHIUDPNCMPHVODMFCPCUIFDMFBOBSDIJUFDUVSFIUNM IUUQTGBDFCPPLHJUIVCJPqVYEPDTJOEFQUIPWFSWJFXIUNM
$MFBO"SDIJUFDUVSF 3FEVY 'MVY ΞʔΩςΫνϟϒʔϜ ʁ
࣌.WWN$SPTT ϕετͳબͩͬͨ w /V(FUೖΕΔ͚ͩͰ͏ w Ұ௨Γඞཁͳػೳ͕ἧ͏ w ใ͕ গͳ͍தͰ ଟ͍
˞
ͷબ͕ ͷࠓͰ ࠷దͳΘ͚Ͱͳ͍
.77.͚ͩͰ $PSF͕ ਏ͘ͳΔΛ ղܾͰ͖ͳ͔ͬͨ
3FBDUJWF1SPQFSUZͰ $MFBO"SDIJUFDUVSFϕʔεͷ ৽ઃܭʹऔΓΜͩ
$MFBO"SDIJUFDUVSF w υϝΠϯۦಈ։ൃ %%% ͳͲΛҙࣝͯ͠ɺ ϏδωεϩδοΫΛʹׂ͚ͯͱΛׂ͢Δख๏ w ʮ.77.ͰϞσϧͱϏϡʔͷΛʙʯͱ͍͏ଟ͔͕ͬͨɺ ʮ͡Ό͋ͦͷϞσϧͲͳ͍͢ΜͶΜʯͱ͍͏෦ʹର͢ΔղͷҰͭ ͱೝ͍ࣝͯ͠Δ
w .77.͚ͩͰ$PSF͕ਏ͘ͳΔΛղফͰ͖ͳ͍
7JFX 1SFTFOUFS 6TF$BTF 5SBOTMBUPS .PEFM %BUB4UPSF &OUJUZ 3FQPTJUPSZ IUUQRJJUBDPNLPVUBMPVJUFNTBGDGBEFDED
7JFX 1SFTFOUFS 6TF$BTF 5SBOTMBUPS .PEFM %BUB4UPSF &OUJUZ 3FQPTJUPSZ IUUQRJJUBDPNLPVUBMPVJUFNTBGDGBEFDED ը໘දࣔɾΠϕϯτͷ1SFTFOUFSͷ௨
7JFXͱ6TF$BTFͷؒͰͷσʔλΓͱΓ ඞཁͳϩδοΫΛॻ͘ͱ͜ΖɻσʔλͷऔಘͳͲɻ 3FQPTJUPSZ͔Βग़͖ͯͨ&OUJUZΛ.PEFMʹม͢Δ 7JFXͰ༻͢ΔͨΊʹ࠷దԽͨ͠σʔλϞσϧ υϝΠϯͱσʔλͷ*' 6TF$BTFͰ༻͢Δσʔλͷ$36%ॲཧΛ୲ σʔλΛ࣮ࡍʹऔಘߋ৽͢Δ σʔλͰ༻͢ΔσʔλϞσϧ
ͳΜ͔ਏ͘Ͷʁ
w Ϋϥε͕ଟ͗͢ɻ w .PEFMͱ&OUJUZΘ͟Θ͟มͨ͘͠ͳ͍ w ͬͯΔ໊લʹ͍ͨ͠ w 1SFTFOUFSͬͯ.WWN$SPTTతʹ7JFX.PEFM͡ΌΜ͔ w ը໘ʹ͔͔ΘΒͣมΘΔͷίϯτϩʔϧΛߟ͍͑ͨ
w Ϣʔβʔͷૢ࡞ͷ֎Ͱ͕มΘͬͨΓ͢Δཁ݅͋Γ
ॏཁͳͷ੍ޚͷํΛҰఆʹ͢Δ͜ͱ ΫϥεΛׂ͠·͘Δͷຊ࣭͡Όͳ͍ͣ
7JFX 1SFTFOUFS 6TF$BTF 5SBOTMBUPS .PEFM %BUB4UPSF &OUJUZ 3FQPTJUPSZ ࠓճΘ͟Θ͟ม͢Δ ඞཁͳͦ͞͏
7JFX 1SFTFOUFS 6TF$BTF %BUB4UPSF &OUJUZ 3FQPTJUPSZ 4FSWJDF όοΫάϥϯυ͔ΒΛม͑Δॲཧ )551ϙʔϦϯάɺ8FC4PDLFUͰͷมԽ
%BUB4UPSFΛૢ࡞͢Δ͜ͱʹͨ͠ ˞"OESPJEଆͰ*OUFOU4FSWJDFͱ͔ͱ͔ͿΔ͔Β8PSLFSʹ͖ͩͬͨ͢
7JFX 7JFX.PEFM 4DFOF %BUB4UPSF .PEFM 3FQPTJUPSZ 4FSWJDF ͜Ε·Ͱݟ֮͑ͷ͋Δ໊લʹม͑ͨ ɾ1SFTFOUFS͜Ε·Ͱͷ7JFX.PEFM૬ͷಈ͖ ɾ&OUJUZ͜Ε·Ͱͷ.PEFM૬ͷಈ͖
ɹ 7JFXҎ্͜ΕΛͦͷ··ར༻͢Δ ɾ6TF$BTF͍͍ͬͯϫʔυ͔ͪΐͬͱࣗ৴ͳ͔ͬͨ ɹͷͰɺ৽͘͠4DFOF໊ͬͯલΛ͚ͭͨ
7JFX 7JFX.PEFM 4DFOF %BUB4UPSF .PEFM 3FQPTJUPSZ 4FSWJDF ͜ͷ෦͕1$-
ͳΜͱ͔ ಄ʹೖ͖ͬͯͦ͏
ͷؒͷଓʁ
શ෦3YͰܨ͝͏ʂ
3FBDUJWF1SPQFSUZ w ʮ3YͰѻ͑ΔϓϩύςΟʯΛ࡞ΔϥΠϒϥϦ w ͯ͢*0CTFSWBCMFͱͯ͠ͱΒ͑Δ͜ͱ͕Ͱ͖Δ w *0CTFSWBCMF͔Βมͯ͠࡞Δ͜ͱͰ͖Δ w σʔλόΠϯυʹରԠ͍ͯ͠Δ
7JFX 7JFX.PEFM 4DFOF %BUB4UPSF .PEFM 3FQPTJUPSZ 4FSWJDF %BUB4UPSFΛ࠷Լͱͯ͠ Լͷ3FBDUJWF1SPQFSUZΛ ্͔Β4VCTDSJCF͢Δ
͜ͷਤͰ 4FSWJDF͚ͩٯͳͷͰҙ
ͳͥ*0CTFSWBCMF5 Ͱͳ͍ͷ͔ w ʮϓϩύςΟʯͱ͍͏ϝλϑΝ͕Θ͔Γ͍͢ w *0CTFSWBCMF5ͷੜ͢ΔΑΓΘ͔ΓΑ͍ w ͍͟ͱͳͬͨΒ7BMVFʹೖ͢Εྑ͍ w %BUB4UPSF7BMVFΛ͍࣋ͬͯΔ
w 3FQPTJUPSZҎ্3YΫΤϦͰऔΓѻ͏
࣮ྫ IUUQTHJUIVCDPNJTFFCJ31$MFBO"SDIJUFDUVSF%FNP
ͦͷଞͷϙΠϯτ
ΞϓϦͷॳظԽ w 1$-Λ"QQΫϥεΛಠࣗఆٛͯ͠ɺ *OJUJBMJ[FΛΤϯτϦϙΠϯτͰݺͿ w *6OJUZ$POUBJOFS w *4FSWJDF$POUBJOFS .WWN-JHIU༝དྷ
w *7JFX.PEFM-PDBUPS ಠࣗఆٛ
ը໘ભҠμΠΞϩά w .77.-JHIU5PPMLJUͷ /BWJHBUJPO4FSWJDF %JBMPH4FSWJDFΛ͏ w ݹͯ͘Πέͯͳ͍ͷͰιʔεऔΓࠐΜͰ͢ ࠓͷྫͰͦͷ··͍·ͨ͠
"OESPJEͷ"DUJWJUZ෮ؼ w όοΫάϥϯυʹૹΒΕͨޙɺଞͷΞϓϦ͕͋ΔఔΘΕͨͱ͖ʹ ൃੜɺ 4BWFE*OTUBODF4UBUF͔Β෮ؼͤ͞Δඞཁ͕͋Δ w ੜଘظ͕ؒʮϓϩηε࣮ߦதʯͷΛͭͷ%BUB4UPSFʹݻΊΔ w ͦΕҎ֎ͷॴʹফ͑ͯࠔΔঢ়ଶΛ࣋ͨͳ͍ʂ w
0O4BWF*OTUBODF4UBUFΛτϦΨʔʹ%BUB4UPSF͝ͱશ෦อଘʂ w "QQ4UBUF4FSWJDF͕୲
·ΓϙΠϯτ w 'VODͷத͔Βଞͷ3FBDUJWF1SPQFSUZΛࢀর͠ͳ͍ w εϨουͷ࣮ߦॱͱ͔Ͱঢ়ଶ͕Ұఆ͠ͳ͍ w $PNCJOF-BUFTUͰΛྲྀ͢͜ͱ w ॥ࢀরʹҙʂ w
8FBL3FGFSFODF5େࣄ
w /BWJHBUJPO4FSWJDFͷͨΊ͚ͩʹ.77.-JHIU5PPMLJUೖΕͯΔͷແବ w /BWJHBUJPO4FSWJDF͚ͩΓग़ͨ͠DPPMͳͭཉ͍͠ w #BTF7JFX$POUSPMMFS#BTF"DUJWJUZΛΕ͍ͯͳ͍ w ҋΛͨΊࠐΈ͘͢ͳΔͷͰΑΖ͘͠ͳ͍ w
6OJUZΦϫίϯઆ w OVJUT͞ΜͷCMPHࢀর
·ͱΊ
࠷ۙࢼͯ͠Δ 9BNBSJO/BUJWF ։ൃख๏Λհ͠·ͨ͠
7JFX 7JFX.PEFM 4DFOF %BUB4UPSF .PEFM 3FQPTJUPSZ 4FSWJDF
9BNBSJOΛ औΓר͘ঢ়گ େ͖͘มΘͬͨ
ৗʹྑ͍ํ๏ มΘ͍ͬͯΔ
͜ͷํ๏͕ ͍ͭ·Ͱ ࠷ળͰͳ͍
Ξϯςφ Γ͚ͭͮ·͠ΐ͏
ͦ͏͍͑
ͦͷଞࠓͷτϐοΫ 4XJGUϥΠϒϥϦͷऔΓࠐΈ ը૾͖ϓογϡ &YUFOTJPO ˠҋ ωΠςΟϒόΠϯσΟϯάΓΓ ແཧཧ'BCSJD͏ +FOLJOTͷͨΊʹDTQSPKʹखΛ͚ͭΔ
࠙ձͰ