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
React Native で LDR の クライアントを作ったというお話
Search
Kosuke Isobe
November 21, 2016
Technology
0
82
React Native で LDR の クライアントを作ったというお話
Kosuke Isobe
November 21, 2016
Tweet
Share
More Decks by Kosuke Isobe
See All by Kosuke Isobe
Mocha testing in Titanium(en)
k0sukey
1
130
Mocha testing in Titanium(ja)
k0sukey
0
160
Titanium もくもく会 #11
k0sukey
0
210
Titanium もくもく会 #10
k0sukey
0
2.3k
Titanium もくもく会 #5
k0sukey
0
1.9k
Other Decks in Technology
See All in Technology
ソフトウェア開発現代史:製造業とソフトウェアは本当に共存できていたのか?品質とスピードを問い直す
takabow
15
5.4k
Platform EngineeringがあればSREはいらない!? 新時代のSREに求められる役割とは
mshibuya
2
4.1k
Bounded Context: Problem or Solution?
ewolff
1
130
Tokyo RubyKaigi 12 - Scaling Ruby at GitHub
jhawthorn
2
210
プロダクト観点で考えるデータ基盤の育成戦略 / Growth Strategy of Data Analytics Platforms from a Product Perspective
yamamotoyuta
0
330
20250129 Findy_テスト高活用化
dshirae
0
230
Kubernetes x k6 で負荷試験基盤を開発して 負荷試験を民主化した話 / Kubernetes x k6
sansan_randd
0
200
ObservabilityCON on the Road Tokyoの見どころ
hamadakoji
0
230
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
18k
パフォーマンスとコスト改善のために法人データ分析基盤をBigQueryに移行した話
seiya303
1
100
トレードオフスライダーにおける品質について考えてみた
suzuki_tada
3
180
Amazon Aurora バージョンアップについて、改めて理解する ~バージョンアップ手法と文字コードへの影響~
smt7174
1
260
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Automating Front-end Workflow
addyosmani
1367
200k
Music & Morning Musume
bryan
46
6.3k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Code Reviewing Like a Champion
maltzj
521
39k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
Statistics for Hackers
jakevdp
797
220k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Writing Fast Ruby
sferik
628
61k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Transcript
੩Ԭ+BWB4DSJQUษڧձ @k0sukey 3FBDU/BUJWFͰ-%3ͷ ΫϥΠΞϯτΛ࡞ͬͨͱ͍͏͓
ͳͥ-%3
ͳͥ-JWF%XBOHP3FBEFS ▸ Ѫ༻͍ͯ͠Δ"FSP3FBEFSͷߋ৽͕ࢭ·ͬͯ͠·ͬͨʢେ͖ͳը໘ʹରԠ͠ ͍ͯͳ͍ͷͰҾ͖৳͞Εͯ͠·͏ʣɻͱͯ൵͍͠ ▸ ͜Ε͕ͳ͍ͱύζυϥͱ͔Ϟϯετͷใऩू͕Ͱ͖ͳ͍ɻͱͯக໋త ▸ ࠔͬͨ ▸ ͍Ζ͍Ζ͖ͯ͘Δͱ-%3ΫϥΠΞϯτ࡞ͬͯ༡ΜͰΔ
▸ ͪΐͬͱલʹ&MFDUSPOͰ-%3ΫϥΠΞϯτ࡞ͬͨ ▸ /8KTͰ࡞ͬͨ ▸ -%3Λ͍ΖΜͳϓϥοτϑΥʔϜͰಈ͔͢ͷ͕͖ ҎԼͷͰͰ͖͍ͯ·͢
ͦͷલʹʜ
3FBDU/BUJWFͱ 5JUBOJVNͷ ؆୯ͳൺֱ J04ͷΈ
1SFNJTF ·͓͖͑ ▸ ͍ͭ5JUBOJVNΛ͓ͬͯΓ·ͯ͠ ▸ ͲͪΒͷٕज़͕༏Ε͍ͯΔͱ͔ͷͰͳ͍Ͱ͢ ▸ Ξϓϩʔν΄΅ಉ͡Ͱ͢͠Ͷʜ
3FBDU/BUJWF "SDIJUFDUVSF 5JUBOJVN /BUJWF"1*T 3$5#SJEHF +BWB4DSJQU$PSF ɹ3FBDUKT :PVS+BWB4DSJQU /BUJWF"1*T ɹ,SPMM#SJEHF
+BWB4DSJQU$PSF ɹ5JUBOJVN"1*T :PVS+BWB4DSJQU /BUJWF.PEVMFT /BUJWF-JCSBSJFT +BWB4DSJQU-JCSBSJFT "MMPZ
%FWFMPQNFOU$ZDMF 3FBDU/BUJWF ▸ SFBDUOBUJWFSVOJPT ▸ ࠶ಡࠐγϛϡϨʔλͰ㵰 3 ▸ 0CKFDUJWF$Λ͍ͬͨ͡ͱ͖ 9DPEFͰ㵰
3 ▸ $ISPNFPS4BGBSJͰDPOTPMF Λ ݟΔ͜ͱ͕Ͱ͖Δ 5JUBOJVN ▸ UJUBOJVNCVJMEQJPT ▸ -JWF7JFXͱ͍͏ɺ㵰 3ͬΆ͍ ͷ͋Δ͕एׯෆ҆ఆʢ͋·Γͬ ͨ͜ͱ͕ͳ͍ʣɻຖճUJCVJME͠ ͯΔ ▸ DPOTPMF λʔϛφϧͰ
$PEJOH 3FBDU/BUJWF ▸ ͓͖ͳͷΛͲ͏ͧɻݸਓతʹ 8FC4UPSNࢸߴ ▸ &4͑Δɻ'MPX͑Δɻ +49ͰίϯϙʔωϯτΛॻ͍͍ͯ ͘ɻ'MVYͱ͔3FEVYͱ͔ ▸
7JSUVBM%0.͕͢ΜͳΓड͚ೖΕ ΒΕ͍ͯΔͷͳΒҧײͳ͍ 5JUBOJVN ▸ "QQDFMFSBUPS4UVEJPʢ͕ͩɺͭΒ ͘ͳͬͯผͷ*%&ςΩετΤσΟ λಀ͍͛ͯ͘ʣ ▸ #BDLCPOFKTϕʔεͷ.7$ͳ "MMPZϑϨʔϜϫʔΫ͕͋ΔɻϏϧ υ࣌ʹॲཧΛϑοΫͰ͖ΔͷͰɺ ࣗͷ͖ͳτϥϯεύΠϥΛ ͏͜ͱͰ͖Δ ▸ લ৮Εͳ͘5JUBOJVNʙ͕࢝· Δɻ͓·͡ͳ͍ͷΑ͏ʹ
4UZMF 3FBDU/BUJWF ▸ جຊ$44Ά͍ɻಠಛͳ'MFYCPY͕ ࠷ॳͭΒ͔ͬͨʢࠓʣ ▸ +49ͷதʹॻ͍͍ͯ͘ɻϑΝΠϧ ୯ҐͰׂ͢ΔϝϦοτ͕͋·Γ ݟ͔ͭΒͳ͔ͬͨͷͰɺίϯϙʔ ωϯτ୯ҐͰهड़ͨ͠
5JUBOJVN ▸ $44ͬΆ͍ɻ͋͘·ͰʮΆ͍ʯɻ ಠࣗͷελΠϧཁૉ͕๛ ▸ "MMPZ͏ͱ544ʢ5JUBOJVN4UZMF 4IFFUʣΛ͏͜ͱͰ͖Δɻί ϯτϩʔϥͱΓͤΔ ▸ "MMPZΘͳ͍ͱ+BWB4DSJQUͷத ʹهड़͢Δ
$PNQPOFOU 3FBDU/BUJWF ▸ 3FBDU/BUJWFࣗମجຊతͳͷ ͔͠ఏڙ͍ͯ͠ͳ͍ ▸ #VUUPOͱ͔ͳ͍ɻ 5PVDIBCMF)JHIMJHIUͱ͔Έ߹ ΘͤΔ ▸
044Ͱ͍ͬͺ͍͋Δɻ/BUJWF -JCSBSZ͍ͬͺ͍͋Δ 5JUBOJVN ▸ ͕Μͬͯ04ʹैͯ͠Δɻ΄ ΅ἧ͖͍ͬͯͯΔͷͰ ▸ ͳ͍ͷࣗͰ/BUJWF.PEVMFॻ ͍͕ͯΜΔɻ͍͍ͩͨΈΜͳࠔ ΔͷͰɺ୭͔͕ॻ͍͍ͯΔ ▸ 5JUBOJVN4%,ͷมߋʹै͢Δ ͷେมɻϞνϕʔγϣϯΛอͭͷ ͕ʜ
-JTU 3FBDU/BUJWF ▸ -JTU7JFXඳըૣ͍ ▸ εΫϩʔϧͷҾֻ͔ͬΓ͕ۃখɻ ΄ͱΜͲײ͡ͳ͍ ▸ 5PVDIBCMF)JHIMJHIU3PXͷ ͕૿͑Δͱਏͦ͏ʢ෦Ͳ͏
ͳ͍ͬͯΔ͔·Ͱͬͯͳ͍ʣ ▸ ηύϨʔλΛ7JFXͰ࡞Δͷ͕ ͪΐ͍ඍົ 5JUBOJVN ▸ 5J6*5BCMF7JFX͕͍ͷͰ 5J6*-JTU7JFX͕࡞ΒΕͨ ▸ ύϑΥʔϚϯεྑ͍ײ͡ɻ 5J6*5BCMF7JFXʹ׳Ε͍ͯΔͱ ͪΐͬͱπϥΠ͔ ▸ 3PXͰͳ͘ɺ-JTUʹλονΠϕ ϯτΛషΔ҆৺ײɻ3PXʹషΕ Δ͕ɺ͕૿͑Δͱॏ͘ͳΔ
/FUXPSLJOH 3FBDU/BUJWF ▸ 'FUDI"1*͕͑Δɻ1SPNJTFͰ ฦ٫͞Εͯ͘Δ GFUDI bIUUQT` UIFO
SFTSFTKTPO UIFO KTPO\^ DBUDI FSS\^ 5JUBOJVN ▸ 5J/FUXPSL)551$MJFOUͰ͓͜ͳ ͏ɻ9)3)UUQ3FRVFTUͳײ͡ WBSYIS 5J/FUXPSLDSFBUF)551$MJFOU YISPOMPBEGVODUJPO \^ YISPOFSSPSGVODUJPO \^ YISPQFO b1045` bIUUQT` YISTFOE
5FTUJOH 3FBDU/BUJWF ▸ +FTU ▸ IUUQGBDFCPPLHJUIVCJPKFTU EPDTUVUPSJBMSFBDUOBUJWFIUNM ▸ ͜͜·ͰΔݩؾ͕ͳ͔ͬͨͷ Ͱɺະ
5JUBOJVN ▸ ͳ͍ ▸ ͔Β࡞ͬͨɻ k0sukey/ti-slag ▸ /PEFKTͰ5JUBOJVN"1*Λٖࣅ తʹৼΔ͏ ▸ .PDIBͰಈ͘ ▸ γϛϡϨʔλPS࣮ػෆཁ
4VNNBSZ 3FBDU/BUJWF ▸ -FBSOPODF XSJUFBOZXIFSF ▸ 3FBDUKTͷ͕ࣝ׆͔ͤΔ ▸ 9DPEFͷ͕ࣝඞཁɻΞΠίϯͱ ͔ىಈը໘ม͑ͨΓɻετΞʹσ
ϓϩΠ͢Δͱ͖4DIFNFΛฤू ͢Δඞཁ͕͋Δ 5JUBOJVN ▸ 8SJUFPODF BEBQUBOZXIFSF ▸ 5JUBOJVNͷ͓࡞๏ΛΔඞཁ ▸ Կଓ͍͖࣮ͯͨ͋Γ ▸ 9DPEFͷࣝ΄΅ඞཁͳ͍ɻ 5JUBOJVNͷੈքͷதͰ݁Ͱ͖Δɻ ͕ɺ্هͷ௨Γ͓࡞๏ΛΒͳ͍ ͱഁ͢Δɻ͙͢ʹΫϥογϡ͢ ΔΞϓϦ͕Ͱ͖͕͋Δ
4VNNBSZ 3FBDU/BUJWF ▸ 044ͳίϯϙʔωϯτ͕๛ ▸ ΞϓϦͷόΠφϦαΠζ͕খ͍͞ ▸ ϦϦʔεϏϧυ͢Δͱιʔείʔ υNBJOKTCVOEMFʹͳΔɻʢ ಡԽ͞Ε͍ͯΔ͕ɺ͕ΜΕʣ
ίʔυಡΊͯ͠·͏ ▸ 'BDFCPPL͕͍͍ͭͯΔ 5JUBOJVN ▸ ແ͍ͷࣗͰ࡞Δ ▸ ΞϓϦͷόΠφϦαΠζ͕େ͖͍ ▸ ϦϦʔεϏϧυ͢Δͱιʔείʔ υόΠφϦίʔυʹม͞Εɺ ʢਓ͕ʣಡΉ͜ͱͰ͖ͳ͘ͳΔ ▸ ͢͜͠લʹ"YXBZʹങऩ͞Εͨɻ ࠷ۙΑ͘Θ͔ΒΜ
-BEEFS appsto.re/jp/y95fgb.i
-BEEFS Ͱ͖Δ͜ͱ ▸ ϑΟʔυ ▸ ιʔτϑΟϧλϦϯά ▸ ϑΟʔυՃ ▸ هࣄͷӾཡ
▸ ϐϯ ▸ ϐϯ͚ ▸ 4BGBSJͰ։͘ ▸ શআ ▸ هࣄͷࠂ੍
ϑΟʔυͷ Ұཡ -BEEFS
ϑΟʔυͷ Ӿཡ -BEEFS
ΞϓϦͷ ઃఆ -BEEFS
-BEEFS هࣄͷࠂ੍ ▸ /463-1SPUPDPMΛఆٛͨ͠ ▸ γϛϡϨʔλͰϒϩάͱ͔ͷهࣄΛݟͳ͕Βɺ4BGBSJͷ 8FCΠϯεϖΫλͰࠂϓϩόΠμͷ63-Λᥔ௵ͨ͠ ▸ هࣄͷಡΈࠐΈ͕ஈҧ͍Ͱૣ͘ͳͬͨ ▸
3$5#SJEHF.PEVMFͰΦϯΦϑͰ͖ΔΑ͏ʹͯ͋͠Δ ▸ 3$5@&91035@.&5)0%ϚΫϩͰ؆୯ʹ+BWB4DSJQUଆͱ ΓऔΓ͕Ͱ͖Δग़ೖΓޱΛ࡞Δ͜ͱ͕Ͱ͖Δ
-BEEFS Ͱ͖ͳ͍͜ͱ ▸ ͔ͬ͜Α͍σβΠϯ ▸ ϑΟʔυͷআͳͲͷཧܥ ▸ ϑΥϧμɾϨʔςΟϯάදࣔ ▸ ϔουϥΠϯϞʔυͱ͔
ɹɹɹɹɹɹɹɹɹɹࡉ͔͍ૢ࡞ΣϒαʔϏεͰͲ͏ͧ
-BEEFS ࠓޙ ▸ ετΞʹެ։४උத ▸ ݸਓͷ"QQMF%FWFMPQFS1SPHSBN͍࣋ͬͯͳ͔ͬͨ ▸ "QQ5SBOTQPSU4FDVSJUZ͕৹ࠪରʹͳΔલʹͳΜͱ͔ Γࠐ·͍ͤͨ ▸
"OESPJE൛Βͳ͍ ▸ ͓ࣄҎ֎Ͱ"OESPJE৮Βͳ͍ͷͰʜ ▸ ΫϩεϓϥοτϑΥʔϜยखؒͰͰ͖ͳ͍
3FBDU/BUJWFͰ ։ൃ͢Δͱ͖ͷ5JQT
6*&YQMPSFS ίϯϙʔωϯτͷݟͨΛ֬ೝ͠Α͏ ▸ GBDFCPPLSFBDUOBUJWFUSFF NBTUFS&YBNQMFT6*&YQMPSFSʹ͋ ΔɻϏϧυͯࣗ͠ͷʹೖΕͯ ͓͚͍ͭͰ֬ೝͰ͖Δ ▸ ݟ໊ͨҎ֎ʹίϯϙʔωϯτͷ͍ ํಈ͖֬ೝͰ͖ΔͷͰͱͯศ
ར ▸ %PDTݹ͍ͱ͖͕͋ΔͷͰʜ
%FCVH+43FNPUFMZ 4BGBSJͷ։ൃϝχϡʔΛ͓͏ ▸ ͳ͔ͥΘ͔Βͳ͍͕%FCVH+4 3FNPUFMZΛ͍ͬͯΔͱΞϓϦ͕ Ϋϥογϡ͠·ͬͨ͘ɻະͩʹṖ ▸ 4BGBSJͷ։ൃϝχϡʔʹ͋ΔJ04 γϛϡϨʔλͷ+4$POUFYUTͷ8FC ΠϯεϖΫλ͕ྑ͍
▸ ࣗಈతʹදࣔʹνΣοΫ͓͚ͯ͠ 㵰 3ͯ͠࠶දࣔͯ͘͠ΕΔ
0GGMJOF#VJME 9DPEFͰ4DIFNFΛฤू͠Α͏ ▸ 3FBDU/BUJWFجຊϦϞʔτͰίʔυ͕ྲྀ ͠ࠐ·ΕΔɻ࣮ػͰಈ͔͢ͱ͖έʔϒϧ͔ 8J'JͰ։ൃػͱͭͳ͕͍ͬͯΔඞཁ͕͋Δ ▸ 9DPEFͷ1SPEVDUˠ4DIFNFˠ&EJU 4DIFNF͔Βɺ3VO$POpHVSBUJPOΛ%FCVH ͔Β3FMFBTFʹ͢ΕΦϑϥΠϯͰಈ͔͢
͜ͱ͕Ͱ͖Δɻ3FMFBTFͱ͍͏໊લͰ 4DIFNFΛ࡞͓ͬͯ͘ͱศར ▸ "QQ%FMFHBUFNΛฤू͢ΔΓํݹ ͍ͷͰͪ͜ΒΛ͏ʢWYҎ߱ϏϧυͰ ίέΔʣɻͨͩ͠ɺΞϓϦͰσόοάϝ χϡʔग़ͳ͘ͳΔͷͰཁҙ
6TFMPDBMJNBHFGJMFJO8FC7JFX 8FC7JFXͰϩʔΧϧը૾Λ͏ ▸ 9DPEFͰը૾ΛՃ͢Δඞཁ͕͋ ΔɻϓϩδΣΫτϑΥϧμʹஔ͍ ͚ͨͩͰϏϧυʹؚ·Εͳ͍ ▸ CBTF6SMͰϑΥϧμΛࢦఆ͢Δ DMBTT.Z8FCFYUFOET$PNQPOFOU\ SFOEFS
\ SFUVSO 8FC7JFX TPVSDF\\ IUNMbJNHTSDlJNBHFQOHz` CBTF6SMbNZXFC` ^^ ^
/BUJWF-JCSBSZ +BWB4DSJQU͚ͩͰͰ͖ͳ͍ࣄՄೳʹ ▸ XJYSFBDUOBUJWFOBWJHBUJPOը໘ཧ ͱ͔λϒͱ͔υϩϫʔͱ͔໘ͳͱ͜Ζ ͕ͻͱ·ͱΊͰɻͱΓ͍͋͑ͣͭ͜Λೖ Εͱ͚ɺͲ͏ʹ͔ͳΔײ ▸ PCMBEPSSFBDUOBUJWFWFDUPSJDPOTΞ ΠίϯϑΥϯτΛίϯϙʔωϯτͱͯ͠
ѻ͑ΔɻݟͨͷମࡋΛ͋Δఔ͑Β ΕΔ ▸ KPFGFSSBSPSFBDUOBUJWFDPPLJFT $PPLJFΛ࡞ͬͨΓফͨ͠Γͱɺૢ࡞ Ͱ͖Δɻ'PSLͯ͠$PPLJFΛӬଓԽͰ͖ ΔΑ͏ʹͨ͠
3FBDU/BUJWFΛ બ͢ΔϝϦοτ
.FSJU 3FBDU/BUJWFΛબ͢ΔϝϦοτ ▸ +BWB4DSJQUͰΞϓϦ͕࡞ΕΔʢେࣄʣ ▸ 3FBDUKTͷԸܙ ▸ σʔλόΠϯσΟϯάͱ͔ ▸ ϥϐουϓϩτλΠϐϯά
▸ ͙͢ʹಈ͘ͷ͕࡞ΕΔͷ͔ͬͯͳΓେ͖͍ͷͰ ▸ ίϛϡχςΟ͕׆ൃ
͓͠·͍ 5IBOLZPV❤