Slide 1

Slide 1 text

ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυ
 ͜Ε͚ͩ͸࣮ફ͠ͱ͜͏ΨΠυ by @taiki_ _t 
 ԙ: Rails Developers Meetup 2018-7-14

Slide 2

Slide 2 text

ͰɺͩΕʁ

Slide 3

Slide 3 text

ଞ໊

Slide 4

Slide 4 text

༁ऀͰ͢ 5XJUUFS!UBJLJ@@U Α͔ͬͨΒ
 ώϣϩʔ͓ͳ͠Ό͢ʂ ੢೔฻ཬSC 
 (SBQI2-5PLZP
 ओ࠵

Slide 5

Slide 5 text

࠷ۙͷ׆ಈ ΞϓϦ࡞ͬͯ·͢ 3FBDU/BUJWF
 3BJMT
 (SBQI2-

Slide 6

Slide 6 text

ϩʔΧϧ൪૊ɾ$.ͷΑ͏ͳ ৘ใڞ༗खஈΛશһͷखʹɻ ୭΋͕ۙ͘ͷਓʹ৘ใΛ఻͑ΒΕΔɺ୭΋͕ۙ͘ͷ৘ใΛಘΒΕΔɻ ͜Ε·Ͱࢿຊ͕ͳ͚Ε͹Ͱ͖ͳ͔ͬͨ৘ใ֦ࢄखஈΛશһͷखʹղ์ɻ $PODFQU ΞϓϦ঺հ

Slide 7

Slide 7 text

ौ୩۠ஸ໨LNݍ಺ ✅౤ߘʹ͸Ґஔ৘ใ͕ࣗಈͰͭ͘ ✅Ӿཡ͢Δਓ͸ډ৔ॴºൣғͰ౤ߘΛߜΕΔ ౤ߘ͢Δ͚ͩͰۙ͘ͷਓʹڭ͑ΒΕΔ
 ։͚ͩ͘Ͱͦͷ৔ͷ৘ใ͕ΈΕΔ 1SPEVDU ✅ࣸਅΛࡱͬͯ౤ߘ ΞϓϦ঺հ

Slide 8

Slide 8 text

·͋৭ʑ ೉͍͠

Slide 9

Slide 9 text

ײ૝ͩ͋͘͠ʢJ04ʣ

Slide 10

Slide 10 text

࣮ફͱ͸

Slide 11

Slide 11 text

࠷খݶͷίετͰ ࠷େݶมߋʹڧ͍ίʔυΛॻ͘ ݶΒΕͨ࣌ؒͱ
 Ϧιʔεͷத લఏ ໨ඪ

Slide 12

Slide 12 text

lࠓ೔ʹͰ΋ձ͕ࣾ౗࢈ͯ͠͠·͏ͱ͍͏ঢ়گͰ͋Ε ͹ɺཌ೔ʹɺͦͷίʔυʹͲΕ͚ͩͷίετ͕͔͔ Δ͔Λؾʹ͍ͯ͠Δ৔߹Ͱ͸͋Γ·ͤΜɻ༩͑ΒΕ ͨ࣌ؒͰ࠷ળΛਚ͔͘͢͠ͳ͍ͷͰ͢ɻz ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج

Slide 13

Slide 13 text

lઃܭʹ൒݄͔͔ΓɺརӹΛੜΈग़͢Α͏ʹͳΔ·Ͱ ʹ೥͔͔ΔΑ͏Ͱ͋Ε͹ɺ͓ͦΒͦ͘ͷઃܭʹ͸ݟ ߹͏΄ͲͷՁ஋͸͋Γ·ͤΜɻz ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج

Slide 14

Slide 14 text

ݱ࣮

Slide 15

Slide 15 text

✔ݶΒΕͨ࣌ؒ ✔ݶΒΕͨϦιʔε ✔มԽ͢Δཁٻ ✔༧ଌͰ͖ͳ͍ະདྷ

Slide 16

Slide 16 text

ͷதͰ

Slide 17

Slide 17 text

lݱ࣌఺ɺͦͯ͠ະདྷʹ͓͍ͯ΋ɺҰ؏ͯ͠අ༻ରޮՌ ͷ༏Εͨߏ੒Λߟ͑Δඞཁ͕͋Γ·͢ɻz ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج

Slide 18

Slide 18 text

ੜ͖ൈ͘ʜ

Slide 19

Slide 19 text

ઃܭ

Slide 20

Slide 20 text

l࣮༻తͳઃܭͱ͸ɺະདྷΛਪଌ͢Δ΋ͷͰ͸ͳ͘ɺ ະདྷΛड͚ೖΕΔͨΊͷબ୒ࢶΛอޢ͢Δ΋ͷͳͷ Ͱ͢ɻz ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج

Slide 21

Slide 21 text

࠷খݶͷ ίετͰ ࠷େݶม ߋʹڧ͍

Slide 22

Slide 22 text

ͦ͜Ͱ

Slide 23

Slide 23 text

536&ݪଇ ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυ
 ͜Ε͚ͩ͸࣮ફ͠ͱ͜͏ΨΠυᶃ

Slide 24

Slide 24 text

ݟ௨͕͠ྑ͍ʢ5SBOTQBSFOUʣɿ มߋ͢Δίʔυʹ͓͍ͯ΋ɺͦͷίʔυʹґଘ͢Δ ผͷ৔ॴͷίʔυʹ͓͍ͯ΋ɺมߋ͕΋ͨΒ͢Өڹ ͕໌നͰ͋Δ ར༻ੑ͕ߴ͍ʢ6TBCMFʣɿ ͲΜͳมߋͰ͋ͬͯ΋ɺ͔͔Δίετ͸มߋ͕΋ͨ Β͢རӹʹ;͞Θ͍͠ ߹ཧతʢ3FBTPOBCMFʣɿ ৽͍͠؀ڥɺ༧ظ͍ͯ͠ͳ͔ͬͨ؀ڥͰ΋࠶ར༻Ͱ ͖Δ ໛ൣతʢ&YFNQMBSZʣɿ ίʔυʹมߋΛՃ͑Δਓ͕ɺ্هͷ඼࣭Λࣗવͱอ ͭΑ͏ͳίʔυʹͳ͍ͬͯΔ ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج

Slide 25

Slide 25 text

ݟ௨͕͠ྑ͘ɺ߹ཧతͰɺར༻ੑ͕ߴ͘ɺ໛ൣత ʢͦΕͧΕͷӳ୯ޠͷ಄จࣈΛͱͬͯ536&ʣͳίʔ υ͸͍·ݱࡏͷχʔζΛຬ͚ͨͩ͢Ͱ͸ͳ͘ɺকདྷ తͳχʔζΛຬͨ͢Α͏ʹมߋΛՃ͑Δ͜ͱ΋Ͱ͖ ·͢ɻ ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج

Slide 26

Slide 26 text

ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج 536&ͳίʔυΛॻͨ͘Ίͷ࠷ॳͷҰา ͸ɺͦΕͧΕͷΫϥε͕ɺ໌֬ʹఆٛ͞ Εͨ୯Ұͷ੹೚Λ࣋ͭΑ͏పఈ͢Δ͜ͱ Ͱ͢ɻ

Slide 27

Slide 27 text

୯Ұ੹೚ ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυ
 ͜Ε͚ͩ͸࣮ફ͠ͱ͜͏ΨΠυᶄ 536&ͳίʔυͷͨΊʹ

Slide 28

Slide 28 text

Ϋϥε΋

Slide 29

Slide 29 text

ϝιου΋

Slide 30

Slide 30 text

୯Ұ੹೚Λ ৺͕͚Α͏

Slide 31

Slide 31 text

Ͱ΋Ͱ͖ͳ͍ͱ͖͋Δ ΑͶ

Slide 32

Slide 32 text

ίϝϯτ ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυ
 ͜Ε͚ͩ͸࣮ફ͠ͱ͜͏ΨΠυᶅ

Slide 33

Slide 33 text

536&ݪଇ͔Β
 ཭ΕΔ࣌͸
 ίϝϯτͰิ͏

Slide 34

Slide 34 text

ݟ௨͕͠ྑ͘ͳ͍ʢ҉໧ͷ஌͕ࣝ͋Δʣͱ͖ ͦΕΛॻ͘ ֎෦ίϯϙʔωϯτͷಈ͖ͱ͔ https://github.com/facebook/react-native/blob/ e9e20e6c8335f27af8469cd23cb7ba079b0422f9/local-cli/generator/templates.js#L49

Slide 35

Slide 35 text

߹ཧత͡Όͳ͍ͱ͖ ྫӡ༻ͨ͠Βരൃ͢Δ͡Ό ΜɺΈ͍ͨͳίʔυͳͲ ྫԠٸॲஔ

Slide 36

Slide 36 text

ར༻ੑ͕௿͍ͱ͖ ࠶ར༻ੑ͕௿ͯ͘ྑ͍ཧ༝Λॻ͘ɻ ྫݕূ͕ऴΘͬͨΒ͙͢ফ͢ίʔυ

Slide 37

Slide 37 text

໛ൣత͡Όͳ͍ͱ͖ɿ ਅࣅ͠ͳ͍ͰͶɺͱཧ૝͸Ͳ͏͔Λ ॻ͘ɻ ༁͜͜ʹ͜ͷίʔυ͕͋Δͷ͸͋ΔछͷϋοΫɻ50%0ΠϯλʔϑΣʔεʹ ௚઀௥Ճ͢Δ IUUQTHJUIVCDPNGBDFCPPLSFBDUOBUJWFCMPCFGCGFBCGDEEDCD 3FBDU"OESPJETSDNBJOKBWBDPNGBDFCPPLSFBDUCSJEHFCSJEHFQSP

Slide 38

Slide 38 text

ৗʹ536& Λҙࣝ͢Δ

Slide 39

Slide 39 text

૯ྗઓͰ
 มߋʹڧ͍ίʔυ Λ࡞͍ͬͯ͜͏

Slide 40

Slide 40 text

536&ݪଇ ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυ
 ͜Ε͚ͩ͸࣮ફ͠ͱ͜͏ΨΠυ·ͱΊ ୯Ұ੹೚ ৗʹҙࣝ ৺͕͚ Ͱ͖ͳ͍ͱ͖͸

Slide 41

Slide 41 text

൪֎ฤ ΄͔ͷ෢ث

Slide 42

Slide 42 text

ίϐϖ ίϐϖ͸࣌ʹڧྗͳ෢ثͩ

Slide 43

Slide 43 text

ίϐϖͰ͖ͳ͍΄Ͳ
 ௕͍ίʔυ ෳࡶͳίʔυ͸ॻ͔ͳ͍ ίϝϯτ͸ઈର͠Α͏ ͍͍ͤͥճ໨͙Β͍·Ͱɻճ໨ Ҏ߱͸ந৅Խ΍੾Γ෼͚Λ͠Α͏

Slide 44

Slide 44 text

༧ݴ͠ͳ͍

Slide 45

Slide 45 text

lϓϩάϥϚʔ͸௒ೳྗऀͰ͸ͳ͍ͷͰɺಛఆͷະདྷ Λ༧ଌͨ͠ઃܭ͸ɺ͍͍ࣦͨͯഊʹऴΘΓ·͢ɻz ൈਮ
 ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυʙ3VCZͰΘ͔ΔਐԽ͚ͭͮ͠ΔॊೈͳΞϓϦέʔγϣϯͷҭͯํ
 4BOEJ.FU[ɺ∁ࢁହج

Slide 46

Slide 46 text

ྫɿந৅Խͯ͠
 ϙϦϞʔϑΟοΫؔ࿈
 ࡞ͬͨΓͯ͠΋ ࢖Θͳ͔ͬͨɾ ࢖͑ͳ͍͜ͱ͕Θ͔ͬͨΒ ࢮ

Slide 47

Slide 47 text

EVQMJDBUJPOJTGBSDIFBQFS UIBOUIFXSPOHBCTUSBDUJPO IUUQTXXXTBOEJNFU[DPNCMPHUIFXSPOHBCTUSBDUJPO

Slide 48

Slide 48 text

QSFGFSEVQMJDBUJPOPWFSUIF XSPOHBCTUSBDUJPO IUUQTXXXTBOEJNFU[DPNCMPHUIFXSPOHBCTUSBDUJPO

Slide 49

Slide 49 text

νʔϜͷ
 ߹ҙ

Slide 50

Slide 50 text

ίʔυͷ߹ཧੑ͸ ϓϩμΫτͷϑΣʔζ νʔϜʹΑͬͯ΋มΘΔͷͰ Α͘࿩ͦ͏

Slide 51

Slide 51 text

ٞ࿦ͷ౔୆
 ʢڞ௨ݴޠʣ ͕ཉ͍͠

Slide 52

Slide 52 text

ྑ͍ຊ͕͋Δ

Slide 53

Slide 53 text

No content

Slide 54

Slide 54 text

?V?

Slide 55

Slide 55 text

͋Ε΋͍ͨ͜͠Ε΋͍ͨ͠
 ΋ͬͱ͍ͨ͠΋ͬͱ΋ͬͱ͍ͨ͠
 Š5)&#-6&)&"354ເ

Slide 56

Slide 56 text

ݶΒΕͨ࣌ؒͷͳ͔Ͱ
 आΓ΋ͷͷ࣌ؒͷͳ͔Ͱ
 ຊ෺ͷເΛݟΔΜͩ
 Š5)&#-6&)&"354ເ

Slide 57

Slide 57 text

΍͍͖ͬͯ

Slide 58

Slide 58 text

ΦϒδΣΫτࢦ޲ઃܭ࣮ફΨΠυ
 ͜Ε͚ͩ͸࣮ફ͠ͱ͜͏ΨΠυ by @taiki_ _t 
 ԙ: Rails Developers Meetup 2018-7-14 5)"/, :06