Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
React NativeとExpoを用いたクロスプラットフォーム開発入門
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shinnosuke Yamamoto
February 08, 2019
Programming
4.7k
4
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
React NativeとExpoを用いたクロスプラットフォーム開発入門
オリジナルのスライド
https://drive.google.com/open?id=1usMYktUlwjYVZEUfcSbYERe8ZO2mwnSP
Shinnosuke Yamamoto
February 08, 2019
Transcript
101 slides
3FBDU/BUJWFͱ&YQPΛ༻͍ͨ ΫϩεϓϥοτϑΥʔϜ։ൃೖ גࣜձࣾϊϋφ!NSUSZ
ࣗݾհ w ͱΒ͍ !NSUSZ w 4IJOOPTVLF:BNBNPUP w "OESPJEɺ͙Β͍ w
3FBDU/BUJWFɺ͙Β͍
None
·͕͖͑ w ۙɺΫϩεϓϥοτϑΥʔϜ։ൃ͕Γ্͕͖͍ͬͯͯΔ w ʮരͰJ04"OESPJEΞϓϦ͕࡞Εͦ͏ʯ w ͚ͩͲɺΞϓϦΤϯδχΞ͕৮ΕΔػձ͋·Γͳ͍ w 3FBDU/BUJWFͱ&YQPʹೖͯ͠Έ·͠ΐ͏
ΰʔϧ ҎԼͷ༰͕ͬ͘͟ΓΘ͔Δ w 3FBDU/BUJWFͱ&YQPͷ֓ཁ w 3FBDU/BUJWFͱ&YQPͷ࠾༻͕߹க͢Δέʔε w ͓·͚ ։ൃ࣌ʹཱͭ5JQT
͓͠ͳ͕͖ w ΫϩεϓϥοτϑΥʔϜ։ൃπʔϧͱ w 3FBDU/BUJWFʹ͍ͭͯ w &YQPʹ͍ͭͯ w 3FBDU/BUJWFͱ&YQPͰ։ൃ͢Δརܽ w
3FBDU/BUJWFͱ&YQPͷ࠾༻͕ద͍ͯ͠ΔΞϓϦ w ࣮ࡍʹ։ൃ͢Δͱ͖ʹཱͭ5JQT
ΫϩεϓϥοτϑΥʔϜ։ൃπʔϧ ͱ
ΫϩεϓϥοτϑΥʔϜ։ൃπʔϧͱ w ෳͷϓϥοτϑΥʔϜΛରͱ͢ΔΞϓϦΛ։ൃͰ͖Δ։ൃπʔϧ w ຊൃදͰจ຺తʹɺJ04"OESPJEΛλʔήοτͱ͍ͯ͠·͢
։ൃͷงғؾ <View> <AppBar /> <ListView> <Item /> <Item /> ...
<Item /> <Item /> </ListView> </View> J04"OESPJE
ར w Ұͷ࣮Ͱɺ྆04ͷΞϓϦΛ։ൃ͢Δ͜ͱ͕Ͱ͖Δ w ωΠςΟϒΛॻ͘ΑΓɺखૣ͘؆୯ʹ࣮Ͱ͖Δ w ֤04ؒͰͷ༷ͷڞ௨Խ͕͍͢͠
ܽ w ύϑΥʔϚϯε͕ྼΓ͍͢ w ωΠςΟϒػೳ͕ϑϧ׆༻Ͱ͖ͳ͍ w ֤04ͷ6*69ͷ࠶ݱ͕͍͠
༻๏༻ྔΛߟ͍͑ͯ·͠ΐ͏ w ศརͳπʔϧͰ͋Δ͕ɺۜͷؙͰͳ͍ w ։ൃମ੍ཁ݅ʹΑͬͯɺे࣮༻తͰ͋Δ w ༻๏༻ྔΛߟ͑ͯɺ্खʹ׆༻͍͖ͯ͠·͠ΐ͏
3FBDU/BUJWFʹ͍ͭͯ
3FBDU/BUJWFͱ w 3FBDUKTΛ༻͍ͯϞόΠϧΞϓϦΛ։ൃ͢ΔͨΊͷϑϨʔϜϫʔΫ w ଞͷΫϩεϓϥοτϑΥʔϜ։ൃͱൺֱ͠ɺߴύϑΥʔϚϯε w ίʔυڞ௨Խ)PU3FMPBEͳͲ͕͋Γɺ։ൃΛ্͍͛͢
ωΠςΟϒΞϓϦͷߏ
4%,ΑΓ্ͷϨΠϠʔ͕૿͑Δ
3FBDU/BUJWFͷߏ +BWB4DSJQU-BZFS /BUJWF-BZFS ˡ3FBDUKTͷίʔυ ˡ"OESPJE࣮ʹඥͮ͘ίʔυ ˡ+BWB4DSJQU࣮ߦڥ ˡ͍ͭͷ"OESPJE࣮
3FBDU/BUJWFͷߏ +BWB4DSJQU-BZFS /BUJWF-BZFS ˡ3FBDUKTͷίʔυ ˡ"OESPJE࣮ʹඥͮ͘ίʔυ ˡ+BWB4DSJQU࣮ߦڥ ˡ͍ͭͷ"OESPJE࣮
3FBDU/BUJWFͷߏ +BWB4DSJQU-BZFS /BUJWF-BZFS ˡ3FBDUKTͷίʔυ ˡ"OESPJE࣮ʹඥͮ͘ίʔυ ˡ+BWB4DSJQU࣮ߦڥ ˡ͍ͭͷ"OESPJE࣮
3FBDU/BUJWFͷߏ +BWB4DSJQU-BZFS /BUJWF-BZFS ˡ3FBDUKTͷίʔυ ˡ"OESPJE࣮ʹඥͮ͘ίʔυ ˡ+BWB4DSJQU࣮ߦڥ ˡ͍ͭͷ"OESPJE࣮
3FBDU/BUJWFͷߏ +BWB4DSJQU-BZFS /BUJWF-BZFS ˡ3FBDUKTͷίʔυ ˡ"OESPJE࣮ʹඥͮ͘ίʔυ ˡ+BWB4DSJQU࣮ߦڥ ˡ͍ͭͷ"OESPJE࣮
3FBDU/BUJWFͷߏ +BWB4DSJQU-BZFS /BUJWF-BZFS ˡ3FBDUKTͷίʔυ ˡ"OESPJE࣮ʹඥͮ͘ίʔυ ˡ+BWB4DSJQU࣮ߦڥ ˡ͍ͭͷ"OESPJE࣮
ϓϩδΣΫτͷத +BWB4DSJQUҎ֎ʹɺ"OESPJEɺJ04ͷσΟϨΫτϦ͕͋Δ
ϓϩδΣΫτͷத "OESPJEҎԼɺ͍ͭ௨ΓͷϑΝΠϧ
ΞϓϦΛϏϧυ͢Δ # Web ServerΛ্ཱͪ͛Δ $ yarn start # Gradle͕࣮ߦ͞ΕΔ $
react-native run-android
8FMDPNFUP3FBDU/BUJWF class App extends Component { render() { return (
<View> <Text>Welcome to React Native!</Text> <Text>To get started, edit App.js</Text> <Text>{instructions}</Text> </View> ); } }
ωΠςΟϒͷ6*͕ඳը͞Ε͍ͯΔ
ωΠςΟϒͷ6*͕ඳը͞Ε͍ͯΔ
)PU3FMPBE
)PU3FMPBEͷΈ
-PDBMͰ8FC4FSWFSΛ্ཱͪ͛Δ
3FBDU/BUJWFͷΞϓϦΛ্ཱͪ͛Δ
8FC4FSWFSͷ+4ΛΞϓϦʹμϯϩʔυ͢Δ
μϯϩʔυͨ͠+4ΛݩʹΞϓϦΛಈ͔͢
खݩͷ+4Λߋ৽͢ΔͱɺΞϓϦͷ+4ߋ৽͞ΕΔ
3FMFBTF#VJME࣌ɺ"TTFUTҎԼͷ+BWB4DSJQUΛಡΈࠐΉ
ͦͷଞͷಛ w 3FBDUKTͱಉ͘͡044Ͱެ։͞Ε͍ͯΔ w 6*3FBDUKTɺελΠϦϯά$44JO+4Ͱ࣮͢ΔͨΊɺ ΞϓϦΤϯδχΞҎ֎͔ΒνʔϜϝϯόʔΛܴ͑ೖΕ͍͢
3FBDU/BUJWFͱ "OESPJEFS͚ w "OESPJEΞϓϦͷ্ʹ+BWB4DSJQUͷ࣮ߦڥ͕ͬͨͷ w ॻ͍ͨ+BWB4DSJQUɺ྆04ͱಉ͡Α͏ʹಈ࡞͢Δ w ։ൃதϏϧυͳ͠ʹ࡞ۀͰ͖ɺ։ൃαΠΫϧΛճ͍͢͠ w ఏڙ͞Ε͍ͯͳ͍ωΠςΟϒ࣮ɺࣗͰ࣮͠ɺิ͏͜ͱ͕Ͱ͖Δ
ͱͯศརͦ͏͡Όͳ͍Ͱ͔͢ʁ
ͦΜͳ߹ͷ͍͍ɺϗϯτͳͷ
3FBDU/BUJWFͷͭΒ͍
֤04ΛϏϧυ͢Δͷ͕ͭΒ͍ w 9DPEFɺ(SBEMFͷ྆ํΛ৮Δඞཁ͕͋Δ w ҰํΘ͔Δ͔ɺ྆ํΘ͔Βͳ͍ਓ͕େମͷͣ w ʮ։ൃҎ֎ʯͰർฐ͕ͪ͠ w ڥߏஙɺϥΠϒϥϦͷՃɺϦϦʔεϏϧυ
SEQBSUZͷωΠςΟϒ࣮͕࣭ w ຊՈఏڙͷωΠςΟϒ࣮͚ͩͰɺػೳ͕ෆ͍ͯ͠Δ w SEQBSUZͷϥΠϒϥϦɺ࣭͕ΠϚΠνͳͷ͕ଟ͍ w ࣮ΛಡΜͩΓɺಈ࡞ݕূ͕ඞཁͰɺબఆ͚ͩͰ͕͔͔࣌ؒΔ
3FBDU/BUJWFͱ֤04ͷอक͕େม w 3FBDU/BUJWFͷߋ৽ w ߋ৽͢Δ͚ͩͰյΕ͕ͪ w ֤04ͷอक w 5BSHFU4%,7FSTJPOͷରԠͳͲ ී௨ͷ։ൃͰߦ͏อक͕ಉ͡Α͏ʹඞཁ
+BWB4DSJQU࣮ߦڥʹࠩҟ͕͋Δ w "OESPJEͷ+BWB4DSJQU$PSF͕ݹ͍ w "OESPJE͚ͩಈ࡞͕ॏ͔ͬͨΓɺΫϥογϡ͢Δ͜ͱ͕͋Δ w J04ͱ"OESPJEɺಉ͡Α͏ʹಈ͘ͷͰͳ͔ͬͨͷ͔
ͦͷଞͷͭΒ͍ w සൟͳը໘ߋ৽େ͖ͳσʔλΛը໘Ͱѻ͏ͱॏ͍ w σόοάͰͨ·ʹϋϚΔ w "OESPJEJ04+BWB4DSJQUͷΤϥʔίʔυΛಡղ͢ΔεΩϧ͕ඞཁ w ࣮ߦϑΝΠϧࣗମ͕େ͖͘ͳΓ͕ͪ w
৽نϓϩδΣΫτΛϏϧυ͢Δ͚ͩͰ.#ఔ͋Δ
3FBDU/BUJWFͰͷ։ൃ ར ܽ ྆04։ൃͰ͖Δ ωΠςΟϒΞϓϦΑΓॏ͍ 044Ͱ͋Δ ࣮ߦϑΝΠϧ͕େ͖͘ͳΔ ଞͷΫϩεϓϥοτϑΥʔϜ։ൃΑΓ͍ܰ σόοά͕େม )PU3FMPBE
3FBDU/BUJWFͱ֤04ͷอक͕େม νʔϜϝϯόʔΛܴ͑ೖΕ͍͢ ֤04ͷ#VJME͢Δͷ͕໘ ωΠςΟϒ࣮ΛՃͰ͖Δ SEQBSUZͷωΠςΟϒ࣮͕࣭ +BWB4DSJQU࣮ߦڥʹࠩҟ͕͋Δ
݁ߏେมͰ͢
࣮Ҏ֎ͷ໘ࣄ͕ଟ͍ ʮϥΫʯʹ։ൃ͍ͨ͠Μ ܽ ൃͰ͖Δ ωΠςΟϒΞϓϦΑΓॏ͍ Ͱ͋Δ ࣮ߦϑΝΠϧ͕େ͖͘ͳΔ ϑΥʔϜ։ൃΑΓ͍ܰ σόοά͕େม
3FMPBE 3FBDU/BUJWFͱ֤04ͷอक͕େม Λܴ͑ೖΕ͍͢ ֤04ͷ#VJME͢Δͷ͕໘ ΛՃͰ͖Δ SEQBSUZͷωΠςΟϒ࣮͕࣭ +BWB4DSJQU࣮ߦڥʹࠩҟ͕͋Δ க͠ํͳ͍ ͭΒ͍ͷͰ Ͳ͏ʹ͔͍ͨ͠
ͦΜͳ͋ͳͨʹ࿕ใͰ͢
&YQP Ͱ͍͚·͢ʂ
&YQPΛ࠾༻͢Δͱ͜Μͳײ͡ʹʂ ར ܽ ྆04։ൃͰ͖Δ ωΠςΟϒΞϓϦΑΓॏ͍ 044Ͱ͋Δ ࣮ߦϑΝΠϧ͕େ͖͘ͳΔ ଞͷΫϩεϓϥοτϑΥʔϜ։ൃΑΓ͍ܰ σόοά͕େม )PU3FMPBE
ωΠςΟϒ࣮ͷՃ͕Ͱ͖ͳ͍ νʔϜϝϯόʔΛܴ͑ೖΕ͍͢ ܧଓతͳόοΫάϥϯυ͕Ͱ͖ͳ͍ ωΠςΟϒ࣮ΛՃͰ͖Δ 3FBDU/BUJWFͱ֤04ͷอक͕େม 3FBDU/BUJWFͱ֤04ͷอक͕ෆཁ ֤04ͷϏϧυ͢Δͷ͕໘ ։ൃ͔ΒϦϦʔε·ͰϏϧυෆཁ SEQBSUZͷωΠςΟϒ࣮͕࣭ ߴ࣭ͳ4%,ͷఏڙ +BWB4DSJQU࣮ߦڥʹࠩҟ͕͋Δ ֤04Ͱಉͷ+BWB4DSJQU࣮ߦڥ
͜ΕͳΒɺ։ൃ͍͚ͦ͏͡Όͳ͍Ͱ͔͢ʁ
&YQPʹ͍ͭͯ
&YQPΛͻͱ͜ͱͰ w ࣮ࡁΈͷ3FBDU/BUJWFωΠςΟϒΞϓϦͷ w +BWB4DSJQU෦Λಠ࣮ࣗͨ͠ͷʹࠩ͠ସ͑Δ͜ͱͰ w ΦϦδφϧͷΞϓϦΛ࣮͠·͠ΐ͏ʂ
ϓϩδΣΫτͷத ྆04ͷίʔυ͕ͳ͘ͳΓɺ+BWB4DSJQU͚ͩʹͳΔ
Ϗϧυ͕ͳ͘ͳΓ·͢ʂʂʂ
&YQP$MJFOUͰಈ࡞֬ೝ͢Δ
&YQP$MJFOUͱ w &YQP͔Βఏڙ͞Ε͍ͯΔ3FBDU/BUJWFͷΞϓϦ w )PU3FMPBEͷΈΛར༻͠ɺ ࣗͰॻ͍ͨ+BWB4DSJQUʹࠩ͠ସ͑Δ͜ͱ͕Ͱ͖Δ w &YQP$MJFOUͷ+4Λࠩ͠ସ͑Δ͚ͩͰɺ ωΠςΟϒΞϓϦͷ։ൃΛ͢Δ͜ͱ͕Ͱ͖Δʂʂ
&YQPͰͷ։ൃ࣌ͷײ֮ ˡ͚ͩ͜͜։ൃ ˡϒϥοΫϘοΫε
Ϗϧυڥߏங͕͍Βͳ͘ͳΔʂ
$MPVE#VJMEڥ͕͋Δ FYQPCVJMEBOESPJE
&YQP$MJFOUͷ࣮ɺ3FBDU/BUJWF ˡ3FBDU/BUJWF
&YQP4%, ˡՃ ˡՃ
ศརͳՃػೳ w 1VTI/PUJpDBUJPO w "NQMJUVEF "OBMZUJDT w (PPHMF'BDFCPPL-PHJO w
-PDBMJ[BUJPO w BOENPSF
0WFS5IF"JS ᶃFYQPQVCMJTI ᶅΞϓϦىಈ࣌ʹ+4͕ߋ৽ ᶄϚελʔͷ+4͕ࠩ͠ସΘΔ &YQPͷαʔόʔ
+BWB4DSJQU$PSF͕ߋ৽͞Ε͍ͯΔ &YQP4%,WJTOPXBWBJMBCMFr&YQPTJUJPO w ʮ+BWB4DSJQU$PSFΛߋ৽͠·ͨ͠ʂʯ w "OESPJEͷ+BWB4DSJQU࣮ߦڥ͕ɺେମJ04ͱಉʹ w ྆04ͷৼΔ͍͕ͦΖͬͨ
อकͬͯ͘ΕΔ ֤04ͷϦϦʔεʹࢧো͕ग़ͳ͍ఔʹରԠͯ͘͠Ε͍ͯΔ w 3FBDU/BUJWFͷΞοϓσʔτ w 5BSHFU4%,7FSTJPOͳͲͷରԠ w CJUରԠߦΘΕΔ༧ఆ w &YQPGPS1SPGFTTJPOBMTr&YQPTJUJPO
ͱͯศརͦ͏͡Όͳ͍Ͱ͔͢ʁ
ͦΜͳ߹ͷ͍͍ɺϗϯτͳͷ
&YQPͷܽ ʘͦΜͳʹͭΒ͘ͳ͍Αʗ
ωΠςΟϒ࣮ΛՃͰ͖ͳ͍ w ʮ&YQP$MJFOU্ͷ+4Λࠩ͠ସ͑ͯɺΞϓϦΛ࣮͍ͯ͘͠ʯͱ͍͏Έ w &YQP$MJFOUࣗମΛվमͰ͖ͳ͍ͷͰɺωΠςΟϒ࣮ΛՃͰ͖ͳ͍ w ཉ͍͠ػೳ͕ͳ͔ͬͨΓɺࠂ4%,ΛՃ͍ͨ͠߹ͳͲʹࠔΔ
όοΫάϥϯυͰͷܧଓॲཧ͕Ͱ͖ͳ͍ w ఆظ࣮ߦػೳ࣮͞Ε͍ͯΔ CBDLHSPVOEGFUDI w "OESPJEɺ࣮͍ྃͯͯ͠ϦϦʔεͪ w όοΫάϥϯυͰͷܧଓॲཧʹ͍ͭͯະ࣮ w
Իָ࠶ੜʹ͍ͭͯɺۙʑରԠ͞ΕΔ͔ w "VEJPQMBZCBDLJOCBDLHSPVOEc'FBUVSF3FRVFTUTc&YQP
ܽɺ͜Ε͙Β͍Ͱ͢ w ωΠςΟϒ࣮ΛՃͰ͖ͳ͍ w όοΫάϥΠϯυͰͷܧଓॲཧ͕Ͱ͖ͳ͍
Ͳ͏ʹ͔Ͱ͖ͦ͏ͳൣғͰʁ
&YQPͱ w 3FBDU/BUJWFΛԠ༻ͨ͠ɺ +BWB4DSJQU͚ͩͰωΠςΟϒΞϓϦΛ։ൃͰ͖Δ։ൃπʔϧ w ϏϧυอकɺωΠςΟϒ࣮ͷՃͳͲɺ ։ൃҎ֎ͷωΠςΟϒ·ΘΓͷ໘Λݟͯ͘ΕΔ w ܽͱͯ͠ɺ ʮωΠςΟϒ࣮ͷՃʯʮόοΫάϥϯυͷܧଓॲཧʯ͕Ͱ͖ͳ͍
3FBDU/BUJWFͱ&YQPͰ։ൃ͢Δ རܽ·ͱΊ
3FBDU/BUJWFͰͷ։ൃ ར ܽ ྆04։ൃͰ͖Δ ωΠςΟϒΞϓϦΑΓॏ͍ 044Ͱ͋Δ ࣮ߦϑΝΠϧ͕େ͖͘ͳΔ ଞͷΫϩεϓϥοτϑΥʔϜ։ൃΑΓ͍ܰ σόοά͕େม )PU3FMPBE
3FBDU/BUJWFͱ֤04ͷอक͕େม νʔϜϝϯόʔΛܴ͑ೖΕ͍͢ ֤04ͷ#VJME͢Δͷ͕໘ ωΠςΟϒ࣮ΛՃͰ͖Δ SEQBSUZͷωΠςΟϒ࣮͕࣭ +BWB4DSJQU࣮ߦڥʹࠩҟ͕͋Δ
&YQPΛ࠾༻͢Δͱ͜Μͳײ͡ʹʂ ར ܽ ྆04։ൃͰ͖Δ ωΠςΟϒΞϓϦΑΓॏ͍ 044Ͱ͋Δ ࣮ߦϑΝΠϧ͕େ͖͘ͳΔ ଞͷΫϩεϓϥοτϑΥʔϜ։ൃΑΓ͍ܰ σόοά͕େม )PU3FMPBE
ωΠςΟϒ࣮ͷՃ͕Ͱ͖ͳ͍ νʔϜϝϯόʔΛܴ͑ೖΕ͍͢ ܧଓతͳόοΫάϥϯυ͕Ͱ͖ͳ͍ ωΠςΟϒ࣮ΛՃͰ͖Δ 3FBDU/BUJWFͱ֤04ͷอक͕େม 3FBDU/BUJWFͱ֤04ͷอक͕ෆཁ ֤04ͷϏϧυ͢Δͷ͕໘ ։ൃ͔ΒϦϦʔε·ͰϏϧυෆཁ SEQBSUZͷωΠςΟϒ࣮͕࣭ ߴ࣭ͳ4%,ͷఏڙ +BWB4DSJQU࣮ߦڥʹࠩҟ͕͋Δ ֤04Ͱಉͷ+BWB4DSJQU࣮ߦڥ
͜ΕͳΒ։ൃ͍͚ͦ͏Ͱ͢Ͷ
3FBDU/BUJWFͱ&YQPͷ࠾༻͕ ద͍ͯ͠ΔΞϓϦ
ωΠςΟϒ࣮͕ෆཁͳΞϓϦ w ։ൃதʹཉ͘͠ͳΔػೳେମ&YQP4%,Ͱఏڙ͞Ε͍ͯΔ w ՃͰωΠςΟϒ࣮ΛՃ͢Δཁ͕݅ͳ͍ͳΒద͍ͯ͠Δ
ϓϩτλΠϓͳΞϓϦ w ωΠςΟϒΞϓϦΑΓෑډ͕͍ w )PU3FMPBEͳͲͰૉૣ͘վम͕Ͱ͖Δ w ྆04ΛҰʹ࣮Ͱ͖Δ
ϏϡʔϫʔܥΞϓϦ w Ϗϡʔϫʔܥऔಘ͖ͯͨ͠ใΛදࣔ͢Δ͚ͩͷΞϓϦ w ը໘ͷঢ়ଶөස͕গͳ͍ΞϓϦ΄Ͳద͍ͯ͠Δ w 4/4ɺχϡʔεΞϓϦɺ344ϦʔμʔͳͲద͍ͯ͠Δ
͜ΕΒͷΞϓϦɺ3FBDU/BUJWFͱ&YQP͕ಘҙ w ωΠςΟϒ࣮͕ෆཁͳΞϓϦ w ϓϩτλΠϓͳΞϓϦ w ϏϡʔϫʔܥΞϓϦ
։ൃ͢Δ্Ͱ͓͖͍ͬͯͨ5JQT
'JSFCBTFΛ͍͍ͨ w ݱࡏ&YQPͰωΠςΟϒ࣮͕ͳ͍ͨΊɺ+4࣮ͷΈར༻Ͱ͖Δ w 0WFSWJFXc'JSFCBTF w ݱঢ়Ͱɺ͍͍ͨػೳ&YQP4%,ͷΈ߹ΘͤͰղܾͰ͖Δ w ݱࡏɺ*O1SPHSFTTͰ࣮தͱͷ͜ͱ w
"EEJOHSFBDUOBUJWFpSFCBTFUP&YQPc'FBUVSF3FRVFTUTc &YQP
$*$%ʹ͍ͭͯ Ϣχοτςετ +FTU w5FTUJOH3FBDU/BUJWF"QQTu+FTU 6*ςετ SFBDUOBUJWFUFTUJOHMJCSBSZ w 5FTUJOH&YQP"QQTXJUI%FUPYBOESFBDUOBUJWFUFTUJOHMJCSBSZ
Ϗϧυ UVSUMFDMJ w #VJMEJOH4UBOEBMPOF"QQTPO:PVS$*&YQP%PDVNFOUBUJPO
ࢀߟʹͳΔॻ੶ ։ൃͰΓ͍ͨใ͕ཏ͞Ε͓ͯͯ͢͢ΊͰ͢ w ࣮ફ&YQP ٕज़ॻయΞϓϦͷɺ%SPJE,BJHJͷ͕͋Γɺඞಡͷ w $IFBQ%JWFJOUP3FBDU/BUJWFӽޙ#005)
1VTI/PUJpDBUJPO &YQP͕ωΠςΟϒ࣮ͱ8FC"1*Λఏڙͯ͠ΔͷͰ͔ͬΓ·͠ΐ͏ w 1VTI/PUJpDBUJPOT&YQP%PDVNFOUBUJPO w 4FSWFSଆͷ࣮ྫ͍ͬͯΔ
.BUFSJBM%FTJHOͰ࡞͍͖͍ͬͯͨ SFBDUOBUJWFQBQFSΛ͍·͠ΐ͏ w DBMMTUBDLSFBDUOBUJWFQBQFS.BUFSJBM%FTJHOGPS3FBDU/BUJWF "OESPJEJ04
3FBDU/BUJWFΛ࠾༻͍ͯ͠ΔଞࣾΞϓϦΛΓ͍ͨ ͜͜ʹ͋Δఔܝࡌ͞Ε͍ͯ·͢ w SFBDUOBUJWFKQSFBDUOBUJWFBQQTKQ"QQMJTUNBEFXJUI3FBDU /BUJWFJO+BQBO
ܕ͕ཉ͍͠ 5ZQF4DSJQU͍Ε·͠ΐ͏ w $SFBUJOHB.JOJNBM&YQP3FBDU/BUJWF1SPKFDUXJUI5ZQF4DSJQU BOE+FTU
3FBDUKT͚ͷελΠϦϯάϥΠϒϥϦΛ͍͍ͨ TUZMFEDPNQPOFOUTͱHMBNPSPVT3FBDU/BUJWF͚࣮͕͋Δ w TUZMFEDPNQPOFOUT#BTJDT w SPCJOQPXFSFEHMBNPSPVTOBUJWF3FBDU/BUJWFDPNQPOFOU TUZMJOHTPMWFE
ϥΠϒϥϦબఆ w /BUJWF%JSFDUPSZ͕ศར w &YQPΛར༻͍ͯ͠ΔͱɺωΠςΟϒ࣮ΛՃͰ͖ͳ͍ͷͰҙ w ϥΠϒϥϦͷ*OTUBMMBUJPOʹɺ ASFBDUOBUJWFMJOLAͱॻ͔Ε͍ͯͨΒΞτ
ύϑΥʔϚϯεΛؾʹ࣮ͨ͠ʹ͍ͨ͠ ެࣜʹ͋Δఔॻ͍ͯ͋Δ w 1FSGPSNBODFu3FBDU/BUJWF جຊతʹɺ3FBDUKTͷใ͕ࢀߟʹͳΔ w 3FBDUͷ41"ͷύϑΥʔϚϯενϡʔχϯά࣮ྫcϦΫϧʔτςΫ ϊϩδʔζɹϝϯόʔζϒϩά
ΠϕϯτϩάΛه͍ͨ͠ "NQMJUVEF͔ɺFYQPBOBMZUJDTΛ͏ w "NQMJUVEF&YQP%PDVNFOUBUJPO w ωΠςΟϒ࣮Ͱఏڙ͞Ε͍ͯΔ w FYQP"NQMJUVEF.PEVMFKBWBBUNBTUFSuFYQPFYQP w ެࣜυΩϡϝϯτ
w SZBOWBOEFSQPMFYQPBOBMZUJDT(PPHMF"OBMZUJDTJOUFHSBUJPOGPSVTFXJUI3FBDU/BUJWFBQQT CVJMUPO&YQP w ωΠςΟϒ࣮Ͱͳ͘ɺ.FBTVSFNFOU1SPUPDPMΛୟ͍ͯΔ w .FBTVSFNFOU1SPUPDPMͷ֓ཁcΞφϦςΟΫε.FBTVSFNFOU1SPUPDPMc(PPHMF%FWFMPQFST w ࣮తʹɺΦϑϥΠϯ࣌ʹΠϕϯτΛهͰ͖ͳ͍ͷͰҙ
Ϋϥογϡϩά 4FOUSZΛ͏ w +4ɺωΠςΟϒ྆ํͱͬͯ͘ΕΔ w ωΠςΟϒ࣮Ͱఏڙ͞Ε͍ͯΔ w 6TJOH4FOUSZ&YQP%PDVNFOUBUJPO
͓ΘΓʹ
͓ΘΓʹ w ΫϩεϓϥοτϑΥʔϜ։ൃೖͱͯ͠ɺ3FBDU/BUJWFͱ&YQPͷΛ͠·ͨ͠ w ։ൃڥ͕͖Ε͍ʹඋ͞Ε͍ͯͯɺ։ൃʹूத͘͢͠ͳͬͯΔ w ͍ॴ͕߹͑ͱͯศརͳͷͰɺͬͯΈ͍ͯͩ͘͞ʂ
None
More Decks by Shinnosuke Yamamoto
See All by Shinnosuke Yamamoto
達人への道——専門技能を習得するための学習の地図
mrtry
0
140
textAlignVertical Best Practice
mrtry
1
700
import React.Suspense into Jetpack Compose
mrtry
0
210
How to create mobile apps like cup noodles
mrtry
0
310
(Deep|Web) Link support with expo-router
mrtry
1
530
Notify Slack with EAS Custom Build
mrtry
0
270
How to implement Deployment environment in Expo EAS Build
mrtry
0
5.4k
A story about writing to JD to clarify "what the team values".
mrtry
0
570
What you need to know about signatures by the time of release
mrtry
1
710
Other Decks in Programming
See All in Programming
Kawaiicon: Kubernetes, it's no longer cool, but let's secure it anyway!
barnbarn
0
130
AI時代のシニアエンジニアとは
yosuke_furukawa
PRO
15
12k
Enforcing Your Architecture with Unit Tests in the AI Era (Swift Connection X)
steliosf
PRO
1
170
Crash Auto Pipelines
veronikapj
1
410
Rails初心者がパスキーを実装してみて大変だったこと
ktombow
0
190
まずはコードより業務と向き合う:テーブル解体のためにPdMを呼んだ話
sakawe_ee
0
230
Engineering Biometric UX Across Android Versions | DroidKnights 2026
ryunen344
1
200
複数ドメインを一つのアプリに統合するFlutterの設計と運用_FlutterKaigi2026登壇資料(須永高弘)
takahirosunaga
0
180
LLM 101: Exploring LLMs, Starting with Tokens.
dalinaum
0
110
Spec-Driven Development - Why Vaadin Is the Perfect Fit
simas
PRO
0
250
SFCで実現する病院・医療システムの動的組み立て式UI
koukimiura
1
180
Apple Intelligenceとオンデバイス時代の到来
yahir0
0
240
Featured
See All Featured
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
1
240
Done Done
chrislema
187
17k
Raft: Consensus for Rubyists
vanstee
143
7.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
620
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Navigating Team Friction
lara
192
16k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
RailsConf 2023
tenderlove
30
1.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.8k