Slide 1

Slide 1 text

ϞόΠϧΞϓϦͷߦಈϩάͷӡ༻ͭΒ͞ղফ๏ Aoi Okawa (@aomathwift)

Slide 2

Slide 2 text

●Aoi Okawa (@aomathwift) ●Cookpad Inc. iOS Developer ࣗݾ঺հ

Slide 3

Slide 3 text

ΞϓϦͷߦಈϩάͷӡ༻ ͭΒ͘ͳ͍Ͱ͔͢ʁ

Slide 4

Slide 4 text

ߦಈϩάͱ͸ ● Ϣʔβʔ͕ߦಈΛىͨ͜͜͠ͱΛه࿥ͨ͠ϩά ● ಛఆͷը໘Λදࣔͨ͠ ● ಛఆͷϘλϯΛλοϓͨ͠ɹ౳

Slide 5

Slide 5 text

ϩάͷͭΒ͞ͱ͸Կͳͷ͔

Slide 6

Slide 6 text

࣮ࡍʹ͋ͬͨϩάӡ༻ਏ͍Τϐιʔυ

Slide 7

Slide 7 text

Τϐιʔυᶃɿඞཁͳϩά͕ૹΒΕ͍ͯͳ͍

Slide 8

Slide 8 text

ྫɿ঎඼ͷߪೖܦ࿏Λௐ΂͍ͨͱ͖ shop.shop_section product_detail ങ͍΋ͷΧΰʹ௥Ճ ϩά ભҠ ʴ

Slide 9

Slide 9 text

ྫɿ঎඼ͷߪೖܦ࿏Λௐ΂͍ͨͱ͖ product_detail ങ͍΋ͷΧΰʹ௥Ճ ϩά ભҠ ʴ ͜ͷ෦෼͕ૹΒΕͳ͍ͱ ঎඼ͷߪೖܦ࿏Λਖ਼͘͠ ௐ΂Δ͜ͱ͕Ͱ͖ͳ͍

Slide 10

Slide 10 text

Τϐιʔυᶄɿϩάͷ؅ཧ͕Ͱ͖͍ͯͳ͍

Slide 11

Slide 11 text

࢖ΘΕ͍ͯΔίϯϙʔωϯτ ໊ɾΠϕϯτ໊ΛεϓϨου γʔτʹఆٛͯ͠؅ཧ͢Δ εϓϨουγʔτͷఆٛΛ ݩʹϩά͕࣮૷͞ΕΔ

Slide 12

Slide 12 text

࣮૷ͱఆٛͷؒʹ ζϨ͕ੜ·ΕΔ ఆ͕ٛεϓϨουγʔτʹ ࢒ͬͨ··ʹͳͬͯΔʂ ػೳ͕ফ͔͑ͨΒϩά΋ Ұॹʹ࡟আ͠Α͏

Slide 13

Slide 13 text

ͦͷଞ ● αʔυύʔςΟπʔϧ΁ͷґଘ ● iOS, Android Ͱͷϩά࣮૷ͷͣΕ ● ػೳ໊มߋ΁ͷରԠ

Slide 14

Slide 14 text

Έͳ͞ΜͷΞϓϦͰ΋౰ͯ͸·Δ ΋ͷ͸͋Γ·ͤΜͰ͔ͨ͠ʁ

Slide 15

Slide 15 text

͖ͬͱͲͷΞϓϦ΋ͭΒ͍ Ͱ΋ϩάΛૄ͔ʹ͸Ͱ͖ͳ͍

Slide 16

Slide 16 text

ߦಈϩά͸Կނॏཁͳͷ͔

Slide 17

Slide 17 text

ߦಈϩάͷ༻్ ● Ϣʔβʔͷૢ࡞Λ෼ੳ͠ɺ࣍ͷࢪࡦʹ׆͔͢ ● ෆ۩߹͕͋ͬͨϢʔβʔͷߦಈ͔ΒݪҼΛௐ΂Δ

Slide 18

Slide 18 text

αʔϏε։ൃʹ ϩά͸ඞཁෆՄܽ

Slide 19

Slide 19 text

ආ͚ͯ͸௨Εͳ͍ϩάӡ༻ͷਏ͞ɺ Ͳ͏΍ͬͯղফ͢Δ…ʁ

Slide 20

Slide 20 text

ϩάͷਏ͞Λܰݮ͢ΔͨΊͷΞϓϩʔν

Slide 21

Slide 21 text

ϩάӡ༻ͷྲྀΕ ݕূઃܭ ࢪࡦഎܠͷཧղ طଘϩάͷൃ۷ ࣮૷ อक ෼ੳ ഇࢭ ػೳ։ൃ ৽نϩάͷ௥Ճ σʔλूܭ ղऍɾධՁ ར༻ࡁϩά ͸ୀ໾͢Δ ఆٛ ར༻࣮ଶͷ೺Ѳ ϝϯςφϯε

Slide 22

Slide 22 text

࣮૷ อक ෼ੳ ഇࢭ ఆٛ ɾࢪࡦΦʔφʔͱ࠷ऴతͳϩάͷΞ΢τϓοτΛࡲΓ߹Θ͓ͤͯ͘ ɾϩά࢓༷ݕ౼ςϯϓϨʔτΛ༻ҙ͢Δ ఆٛΛ࿙Εͳ͘ ༻ҙ͍ͨ͠

Slide 23

Slide 23 text

࣮૷ อक ෼ੳ ഇࢭ ఆٛ ࢓ࠐΜͩϩά͕νΣοΫͰ͖ΔΞϓϦ಺ϩά֬ೝπʔϧ IUUQTTQFBLFSEFDLDPNZVKJGJPTEDKBQBONPCJMFBQQMPHHJOH ࣮૷Λϛε΍࿙Ε ͳ͘ߦ͍͍ͨ ✅ ঎඼ৄࡉදࣔ <>ొ࿥λοϓ <>ղআλοϓ ɹʜʜ ඞཁͳϩά

Slide 24

Slide 24 text

࣮૷ อक ෼ੳ ഇࢭ ఆٛ υΩϡϝϯτϕʔεͷܕ҆શͳߦಈϩάఆٛͷࣗಈੜ੒ IUUQTUFDIMJGFDPPLQBEDPNFOUSZ ࣮૷Λϛε΍࿙Ε ͳ͘ߦ͍͍ͨ ύʔαʔ EBJGVLV ϩάఆٛ 4XJGU ϩάఆٛ .BSLEPXO தؒදݱ Λ4XJGU ίʔυԽ

Slide 25

Slide 25 text

https://github.com/cookpad/daifuku

Slide 26

Slide 26 text

࣮૷ อक ෼ੳ ഇࢭ ఆٛ υΩϡϝϯτϕʔεͷܕ҆શͳߦಈϩάఆٛͷࣗಈੜ੒ IUUQTUFDIMJGFDPPLQBEDPNFOUSZ ࣮૷Λϛε΍࿙Ε ͳ͘ߦ͍͍ͨ ύʔαʔ EBJGVLV ϩάఆٛ 4XJGU ϩάఆٛ .BSLEPXO தؒදݱ Λ4XJGU ίʔυԽ ૹΒΕ͍ͯΔϩά Λ೺Ѳ͍ͨ͠

Slide 27

Slide 27 text

࣮૷ อक ෼ੳ ഇࢭ ఆٛ ɾະ࢖༻ͷϩάΛݕग़͢Δ-JOUFSΛ༻ҙ͢Δ ɾϩάఆٛͷఆظతͳݟ௚͠Λଅ͢4MBDL3FNJOEFS ࣮૷ͱఆٛͷဃ཭ Λͳ͍ͨ͘͠

Slide 28

Slide 28 text

͜Ε͚ͩ΍ͬͯͯ΋·ͩਏ͍ʂ

Slide 29

Slide 29 text

νʔϜߏ੒ ● iOS ΤϯδχΞ 4ਓ ● Android ΤϯδχΞ 3ਓ ● αʔϏεશମͷσʔλΛݟΔਓ͕໿2ਓ

Slide 30

Slide 30 text

ϩάͷਏ͞ΛΑΓܰݮ͢ΔͨΊͷऔΓ૊Έ

Slide 31

Slide 31 text

֤ϑΣʔζʹ·ͩେখ༷ʑͳ՝୊͕͋Δ ࣮૷ อक ෼ੳ ഇࢭ ίϯϙʔωϯτ໊ ܾΊΔͷେม ఆٛ ࢖ͬͯͳ͍ϩά ͕࢒ͬͯΔ ૹΔ΂͖৘ใΛ ߟ͑Δͷେม υΩϡϝϯτʹ ḷΓண͚ͳ͍ FUDʜ

Slide 32

Slide 32 text

֤ϑΣʔζʹ·ͩେখ༷ʑͳ՝୊͕͋Δ ࣮૷ อक ෼ੳ ഇࢭ ίϯϙʔωϯτ໊ ܾΊΔͷେม ఆٛ ࢖ͬͯͳ͍ϩά ͕࢒ͬͯΔ ૹΔ΂͖৘ใΛ ߟ͑Δͷେม υΩϡϝϯτʹ ḷΓண͚ͳ͍ FUDʜ શମతʹ՝୊ΛݮΒ͍ͨ͠

Slide 33

Slide 33 text

ϩά΍͍͖ͬͯҕһձΛൃ଍

Slide 34

Slide 34 text

ϩά΍͍͖ͬͯҕһձͱ͸ ● ϩάӡ༻ͷվળʹ੹೚Λ࣋ͬͯऔΓ૊Ή ● ظؒݶఆͷϓϩδΣΫτͱͯ࢝͠ಈͨ͠ ● ϝϯόʔ͸ iOS, Android ΤϯδχΞͦΕͧΕ1ਓͣͭ

Slide 35

Slide 35 text

۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળ఺Λચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛ෼ྨ͢Δ 3. ෼ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊλεΫԽ͢Δ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5. ظؒΛܾΊͯৼΓฦΔ

Slide 36

Slide 36 text

۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળ఺Λચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛ෼ྨ͢Δ 3. ෼ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊΔ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5. ظؒΛܾΊͯৼΓฦΔ

Slide 37

Slide 37 text

ͻͨ͢Βॻ͖ग़͢ ϩάͷύϥϝʔλ ͷա৒ɾෆ଍ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ଍ υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ ϩάʹૹͬͯΔ ৘ใ͕ෳࡶ ίϯϙʔωϯτ໊ ܾΊΔͷେม աڈͷϩά͕੔ཧ ͞Εͯͳ͍ FUDʜ

Slide 38

Slide 38 text

۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળ఺Λચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛ෼ྨ͢Δ 3. ෼ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊΔ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5. ظؒΛܾΊͯৼΓฦΔ

Slide 39

Slide 39 text

ϩάͷύϥϝʔλ ͷա৒ɾෆ଍ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ଍ υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ ϩάʹૹͬͯΔ ৘ใ͕ෳࡶ ίϯϙʔωϯτ໊ ܾΊΔͷେม աڈͷϩά͕੔ཧ ͞Εͯͳ͍ อक ఆٛ ఆٛ ෼ੳ ࣮૷ ࣮૷

Slide 40

Slide 40 text

࣮૷ อक ෼ੳ ఆٛ ϩάͷύϥϝʔλ ͷա৒ɾෆ଍ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ଍ ϩάʹૹͬͯΔ ৘ใ͕ෳࡶ ίϯϙʔωϯτ໊ ܾΊΔͷେม υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ աڈͷϩά͕੔ཧ ͞Εͯͳ͍

Slide 41

Slide 41 text

۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળ఺Λચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛ෼ྨ͢Δ 3. ෼ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊΔ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5. ظؒΛܾΊͯৼΓฦΔ

Slide 42

Slide 42 text

࣮૷ อक ෼ੳ ఆٛ ϩάͷύϥϝʔλ ͷա৒ɾෆ଍ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ଍ ϩάʹૹͬͯΔ ৘ใ͕ෳࡶ ίϯϙʔωϯτ໊ ܾΊΔͷେม υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ աڈͷϩά͕੔ཧ ͞Εͯͳ͍

Slide 43

Slide 43 text

࣮૷ อक ෼ੳ ఆٛ ϩάͷύϥϝʔλ ͷա৒ɾෆ଍ ΞϓϦͷϥΠϑ αΠΫϧϩάෆ଍ ϩάʹૹͬͯΔ ৘ใ͕ෳࡶ ίϯϙʔωϯτ໊ ܾΊΔͷେม υΩϡϝϯτʹ ḷΓண͖ʹ͍͘ աڈͷϩά͕੔ཧ ͞Εͯͳ͍

Slide 44

Slide 44 text

՝୊ͷॻ͖ग़͠ ՝୊ͷ෼ྨ

Slide 45

Slide 45 text

۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળ఺Λચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛ෼ྨ͢Δ 3. ෼ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊλεΫԽ͢Δ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5. ظؒΛܾΊͯৼΓฦΔ

Slide 46

Slide 46 text

ఆྫ վળ ΍ͬͨ͜ͱ֬ೝ ࣍ʹ΍Δ͜ͱܾఆ ͦΕͧΕ͕ վળʹऔΓ૊Ή J04 "OESPJE

Slide 47

Slide 47 text

۩ମతͳεςοϓ 1. ࠓ͋Δ۩ମతͳվળ఺Λચ͍ग़͢ 2. ڍ͕͖ͬͯͨ͜ͱΛ෼ྨ͢Δ 3. ෼ྨͨ͠ΧςΰϦ͝ͱʹ༏ઌॱҐΛܾΊλεΫԽ͢Δ 4. ఆྫͰਐḿΛ֬ೝ͢Δ 5. ظؒΛܾΊͯৼΓฦΔ

Slide 48

Slide 48 text

ظؒΛܾΊͯৼΓฦΔ ● ظؒ಺ͰͰ͖ͨ͜ͱͷৼΓฦΓ ● ͦͷ࣌఺·ͰͰվળ͞Εͨ͜ͱ ͸ɺϩάΛ෼ੳʹ࢖͏ਓ΍։ൃ ϝϯόʔʹڞ༗

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

ߟ͑ͨ͜ͱ ● ϩάج൫ͷվળʹ͓͍ͯɺશͯͷϑΣʔζͷશͯͷ՝୊ ΛҰؾʹղܾ͠Α͏ͱ͢Δͱۤ͘͠ͳΔ͠ɺ೉͍͠ ● ͦͷ࣌ʑͰඞཁͳվળ͸มԽ͢ΔͷͰɺͦͷ࣌ʹՄೳ ͳվળΛ΍Γଓ͚͍ͯ͘͜ͱ͕େ੾

Slide 54

Slide 54 text

ϩάج൫վળͷ೉͠͞

Slide 55

Slide 55 text

Րࣄ͕ى͖͍ͯΔͷΛ ͦͷ··ݟա͢͜͝ͱ͸ͳ͍

Slide 56

Slide 56 text

όάमਖ਼ க໋తͳόά͸ ͦͷ··ݟաͤ͝ͳ͍ όά मਖ਼

Slide 57

Slide 57 text

า͍͍ͯΔ్தͰམ͍ͪͯΔۭ͖؈ Λݟաͣ͝͞શ෦र͏ͷ͸೉͍͠

Slide 58

Slide 58 text

ݟ͚ͭͨϩάج൫ͷ՝୊Λ ౎౓શͯղܾ͍ͯ͘͠ͷ͸೉͍͠ ϩάվળ ՝୊ ՝୊ վળ

Slide 59

Slide 59 text

Ͳ͏͢Δ͔ʁ

Slide 60

Slide 60 text

Έͳ͞Μ͕ʮϩάӡ༻ͭΒ͍ʂʯͷ੠Λ ڍ͛ΔୈҰਓऀʹͳΓ·͠ΐ͏

Slide 61

Slide 61 text

ઃܭ࣌ʹߟྀ Ͱ͖ͯͳ͔ͬͨʜ ͋ͬ͢Έ·ͤΜɺ ࠓ͸ૹͬͯͳ͍Ͱ͢ʜ νϡʔτϦΞϧͷ ϑΝωϧಥഁ཰Λ ௐ΂͍ͨͳ νϡʔτϦΞϧ։࢝ͷ ϩάͬͯ͋Γ·͔͢ʁ ϓϩμΫτΦʔφʔ ΤϯδχΞ

Slide 62

Slide 62 text

ઃܭ࣌ʹߟྀ Ͱ͖ͯͳ͔ͬͨʜ ͋ͬ͢Έ·ͤΜɺ ࠓ͸ૹͬͯͳ͍Ͱ͢ʜ νϡʔτϦΞϧͷ ϑΝωϧಥഁ཰Λ ௐ΂͍ͨͳ νϡʔτϦΞϧ։࢝ͷ ϩάͬͯ͋Γ·͔͢ʁ ϓϩμΫτΦʔφʔ ΤϯδχΞ ͜Μͳͱ͖ͦ͜੠Λڍ͛Δνϟϯε

Slide 63

Slide 63 text

ϩά͕ਏ͍ʂͷ੠Λڍ͛Δ ● ੠Λڍ͛ͨͱ͜Ζ͔Βɺϩάӡ༻ϑΣʔζͷͲ͔͜Ұͭ Ͱྑ͍ͷͰɺվળΛ΍ͬͯΈΔ

Slide 64

Slide 64 text

ࣗ෼΋ र͓͏͔ͳʜ

Slide 65

Slide 65 text

ϩά͕ਏ͍ʂͷ੠Λڍ͛Δ ● ੠Λڍ͛ͨͱ͜Ζ͔Βɺϩάӡ༻ϑΣʔζͷͲ͔͜Ұͭ Ͱྑ͍ͷͰɺվળΛ΍ͬͯΈΔ ● ͦͷϜʔϒΛوํ͕΍Γ࢝ΊΔͱɺਏ͍࣌ʹ੠Λڍ͛Δ จԽ͕νʔϜʹग़དྷͯ͘Δ ˠܧଓతͳվળʹͭͳ͕Δ

Slide 66

Slide 66 text

·ͱΊ

Slide 67

Slide 67 text

·ͱΊ ● ϩά͸αʔϏεͱಉ͡Α͏ʹৗʹมԽ͢Δ΋ͷ ● มԽ͢ΔϩάΛద੾ʹӡ༻͠Α͏ͱ͢Δͱɺେখ༷ʑ ͳਏ͕͞ৗʹ෇͖వ͏ ● ҰͭҰͭ͸ର঱ྍ๏ʹա͗ͳͯ͘΋ɺਏ͞Λղফ͢Δ ͨΊͷϜʔϒΛ΍Ίͳ͍͜ͱ͕େ੾

Slide 68

Slide 68 text

ࠓޙͷϩάج൫վળͷల๬ ● iOS ͱ Android ͷػೳࠩ෼Λϩά͔Βݕ஌͢Δ ● ΑΓ࢖͍΍͍͢ϩάίʔυͷࣗಈੜ੒