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
全力疾走中でも使えるストップウォッチアプリを作る
Search
Ogijun
September 12, 2022
0
4.5k
全力疾走中でも使えるストップウォッチアプリを作る
Ogijun
September 12, 2022
Tweet
Share
More Decks by Ogijun
See All by Ogijun
全力の跳躍を捉える計測アプリを作る
ogijun2018
1
3.4k
続・全力疾走中でも使えるストップウォッチアプリを作る 〜LiDARを使った精度への挑戦〜
ogijun2018
1
1.6k
あなたの知らないWWDC現地参加の世界
ogijun2018
0
2.9k
新社会人でも活躍したい!〜新卒1年目で活躍するためのコツ〜
ogijun2018
1
600
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
Making the Leap to Tech Lead
cromwellryan
134
9.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Building Adaptive Systems
keathley
43
2.7k
Designing for Performance
lara
610
69k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
182
54k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Designing for humans not robots
tammielis
253
25k
4 Signs Your Business is Dying
shpigford
184
22k
Transcript
શྗ࣬தͰ͑Δ ετοϓΥονΞϓϦΛ࡞Δ 2022.9.12 iOSDC Japan 2022 גࣜձࣾZOZO ZOZOTOWN։ൃຊ෦ ZOZOTOWNΞϓϦ෦ iOSϒϩοΫ
Ԯ ൏ / @juginon Copyright © ZOZO, Inc.
© ZOZO, Inc. גࣜձࣾZOZO ZOZOTOWNΞϓϦ෦ iOSϒϩοΫ Ԯ ൏ 2022.04 ZOZO৽ଔೖࣾ
্ڝٕྺ 15ʢ2008~2022ʣ ࣾձਓͰଓ͚ͯ·͢ 2 Ogijun / @juginon
© ZOZO, Inc. 3
© ZOZO, Inc. 4 ࢢൢͷετοϓΥον͍͍͑͡ΌΜ🤔
© ZOZO, Inc. 5 ̋ × ̋ ̋ × ̋
̋ ˚ ̋ ٱੑ ϝϞϦʔػೳ ϥοϓػೳ Ձ֨ ߴڃͳ ετοϓΥον Ϧʔζφϒϧͳ ετοϓΥον ʁ ετοϓΥονൺֱ ˇ
© ZOZO, Inc. ̋ × ̋ ̋ × ̋ ̋
˚ ̋ 6 ٱੑ ϝϞϦʔػೳ ϥοϓػೳ Ձ֨ ߴڃͳ ετοϓΥον Ϧʔζφϒϧͳ ετοϓΥον J1IPOF📱 ˇ ετοϓΥονൺֱ
© ZOZO, Inc. 7
© ZOZO, Inc. 8 REJECTED
© ZOZO, Inc. 9 ͳͥετοϓΥονΞϓϦʹ ԻྔϘλϯͷ੍ޚ͕ඞཁͩͬͨͷ͔ʁ
© ZOZO, Inc. 10 ෳਓ Ұਓ ͳͥԻྔϘλϯ͕ඞཁͳͷ͔ʁ ࿅शʹ͓͚ΔλΠϜܭଌ
© ZOZO, Inc.
© ZOZO, Inc.
© ZOZO, Inc. 13 બख Ϛωʔδϟʔ Γͳ͕ΒετοϓϘλϯ ͕ԡͤͳ͍ બखΛݟͳ͕Β ελʔτετοϓ͕͍͠
ͳͥԻྔϘλϯ͕ඞཁͳͷ͔ʁ ͳͥΓʹ͍͘ͷ͔ʁ
© ZOZO, Inc. 14 બख Ϛωʔδϟʔ Γͳ͕ΒετοϓϘλϯ ͕ԡͤͳ͍ બखΛݟͳ͕Β ελʔτετοϓ͕͍͠
ͳͥԻྔϘλϯ͕ඞཁͳͷ͔ʁ ͳͥΓʹ͍͘ͷ͔ʁ ը໘Λݟ͍ͯͳ͍ঢ়ଶͰૢ࡞͕ΓͮΒ͍ʂ
© ZOZO, Inc. 15 ඞਢ߲ ɾը໘Λݟͳͯ͘ૢ࡞͕Ͱ͖Δ ɾ࣮֬ʹૢ࡞Λߦͬͨͱ͍͏ϑΟʔυόοΫ͕ಘΒΕΔ ͋Δͱخ͍͠ ɾεϚʔτϑΥϯͭͰ݁͢Δ
ˠ४උ͢Δͷʹ͓ۚͱख͕ؒඞཁͩͱຊసʢετοϓΥονΛങ͓͏ʂʣ ͳͥԻྔϘλϯ͕ඞཁͳͷ͔ʁ Ͳ͏͢ΕղܾͰ͖Δʁ ɾͲͷͰૢ࡞Մೳ ˠ-J%"3ਂΧϝϥͳͲɺಛఆͷʹ͔͠ͳ͍ػೳΘͳ͍
© ZOZO, Inc. 16
© ZOZO, Inc. 17
© ZOZO, Inc. 18
© ZOZO, Inc. 19 ղܾ͢ΔͨΊʹ࡞Γ·ͨ͠
© ZOZO, Inc. 20
© ZOZO, Inc. 21 Ϛωʔδϟʔɾސڞʹධ👏 ࣮ࡍʹΓͳ͕Βͬͯշదʹૢ࡞Ͱ͖ͨ ϦϦʔεޙͷԠ ্෦Ҏ֎ͷਓʹͬͯΒ͍͑ͯͨ
© ZOZO, Inc. 22 ϦϦʔεޙͷԠ (VJEFMJOF1FSGPSNBODF4PGUXBSF3FRVJSFNFOUT ͋ͳͨͷΞϓϦɺJ04σόΠεͷඪ४తͳεΠονΛඪ४తͰͳ͍ ํ๏Ͱ༻͍ͯ͠·͢ɻ "QQ4UPSF3FWJFX(VJEFMJOFTʹଇͬͨػೳʹ࡞Γ͍ͯͩ͘͠͞ɻ
© ZOZO, Inc. 23 App Store ReviewΨΠυϥΠϯ https://developer.apple.com/jp/app-store/review/guidelines/#performance → ԻྔϘλϯϛϡʔτεΠονͳͲͷཧϘλϯ͍͚ͬͯͳ͍
❌ Volume Watchͷެ։ఀࢭཧ༝ʮԻྔϘλϯΛ͍ͬͯΔ͔Βʯ (VJEFMJOFͱʁ
© ZOZO, Inc. 24 7PMVNF8BUDI7PMVNF8BUDI😭
© ZOZO, Inc. 25 ඞਢ߲ ɾը໘Λݟͳͯ͘ૢ࡞͕Ͱ͖Δ ɾ࣮֬ʹૢ࡞Λߦͬͨͱ͍͏ϑΟʔυόοΫ͕ಘΒΕΔ ͋Δͱخ͍͠ ɾεϚʔτϑΥϯͭͰ݁͢Δ
ˠ४උ͢Δͷʹ͓ۚͱख͕ؒඞཁͩͱຊసʢετοϓΥονΛങ͓͏ʂʣ ɾͲͷͰૢ࡞Մೳ ˠ-J%"3ਂΧϝϥͳͲɺಛఆͷʹ͔͠ͳ͍ػೳΘͳ͍ Ͳ͏͢ΕղܾͰ͖Δʁ
© ZOZO, Inc. 26 ɾը໘Λݟͳͯ͘ૢ࡞͕Ͱ͖Δ ɾ࣮֬ʹૢ࡞Λߦͬͨͱ͍͏ϑΟʔυόοΫ͕ಘΒΕΔ )BQUJDͷ׆༻ ԻྔϘλϯΛΘͳ͍Ͱ࣮͢Δ
© ZOZO, Inc. 27 ը໘ εϫΠϓ छྨͷΠϯλϥΫγϣϯΛ࣮ ɾը໘Λݟͳͯ͘ૢ࡞͕Ͱ͖Δ ຊࢦ λοϓ
γΣΠΫ എ໘ λοϓ ۙ ηϯαʔ ԻྔϘλϯΛΘͳ͍Ͱ࣮͢Δ ɾ࣮֬ʹૢ࡞Λߦͬͨͱ͍͏ϑΟʔυόοΫ͕ಘΒΕΔ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ ը໘શମΛεϫΠϓՄೳʹ ্ํͷεϫΠϓ࣌ʹελʔτɾετοϓ͢ΔΑ͏ʹઃఆ .directionͰεϫΠϓํΛ4ํࢦఆՄೳ ը໘εϫΠϓͷ੍ޚ࣮ʢྫʣ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ ը໘Λ2ຊࢦͰλοϓ͢Δͱελʔτɾετοϓ .numberOfTouchedRequiredͰԠ͢ΔࢦͷຊΛઃఆ iOSͩͱ3ຊࢦɺiPadOSͩͱ4ຊࢦ·ͰઃఆՄೳ 2ຊࢦλοϓͷ੍ޚ࣮ʢྫʣ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ γΣΠΫ͞ΕͨΒελʔτɾετοϓ CoreMotionͰՃͷੜσʔλΛऔಘ͢Δ͜ͱՄೳ ࠓճUIKitͷmotionEnded()Λ༻ γΣΠΫδΣενϟʔͷ੍ޚ࣮ʢྫʣ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ എ໘λοϓ࣌ʹγϣʔτΧοτΛొ ొ͞ΕͨSiri shortcut͕ىಈ ετοϓΥονΛελʔτ/ετοϓ Siri shortcutΛ࣮ ελʔτ/ετοϓΛγϣʔτΧοτʹ
© ZOZO, Inc. ۙηϯαʔͱ… ௨࣌ʹࣖΛεϐʔΧʔʹ͚ͭͨͱ͖ɺޡಈ࡞Λ͙ͨΊʹ λονύωϧΛແޮԽ͢ΔͨΊͷηϯαʔ εϫΠϓ ຊࢦ λοϓ γΣΠΫ
എ໘ λοϓ ۙ ηϯαʔ → iPhoneͷ্෦ΛखͰୟ͚ɺ؆୯ʹετοϓΥονΛ ੍ޚͰ͖ΔͷͰʁ ۙηϯαʔͷ੍ޚ࣮ʢྫʣ
© ZOZO, Inc. 33 N ճ छྨ ճ εϫΠϓ ຊࢦ
λοϓ γΣΠΫ എ໘ λοϓ ۙ ηϯαʔ Ϙλϯ º º N 4UPQ d ࣮ࡍʹͬͯΈͨ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ Ϙλϯ 34
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ Ϙλϯ 35
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ Ϙλϯ 36
© ZOZO, Inc. 5ճத3ճޭ ७ਖ਼ετοϓΥονͱಉ͘͡Β͍ͷޭ εϫΠϓ͕ҙਤ͠ͳ͍ํߦ͖ɺԠ͠ͳ͔ͬͨ ্Լࠨӈͯ͢ͷεϫΠϓͰԠ͢ΔΑ͏ʹ࣮͕ͨ͠ɺ ࣼΊํಉ༷ʹԠ͠ͳ͔ͬͨ εϫΠϓ ࣮ࡍʹͬͯΈͨ
ه: UIPanGestureRecognizerͰ࣮ͨ͠ͱ͜Ζ্هͷղܾ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ Ϙλϯ 38
© ZOZO, Inc. 39 5ճத0ճޭʢࣦͯ͢ഊʣ λοϓͷڧ͞ɾ͕͞௨ৗͷλοϓͱҟͳΔ ࢦ͕ΕΔ·Ͱʹಈ͘ɺʹΑΓ͏·͘Ԡ͠ͳ͔ͬͨ ʢ1ຊࢦͳΒʁ → ҙਤͤͣ৮ͬͯ͠·͏ɾ࿈ଓͰλοϓͯ͠͠·͏ʣ
ը໘Λ৮ΔΠϯλϥΫγϣϯʹ҆৺ײͱ͍͏໘Ͱ Ұఆͷ͕͋͠͞Δ ຊࢦλοϓ ࣮ࡍʹͬͯΈͨ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ Ϙλϯ 40
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ Ϙλϯ 41
© ZOZO, Inc. 42 ͲͪΒ5ճத0ճޭʢࣦͯ͢ഊʣ ❓ ❓ ❓ ՃηϯαʔΛ࣮ͬͨΔ͜ͱͰʮγΣΠΫ͕ऴΘͬͨʯڥք͕ᐆດʹ… ੜσʔλΛͬͨͱͯ͠ݕग़େมͦ͏
γΣΠΫɾഎ໘λοϓ ࣮ࡍʹͬͯΈͨ
© ZOZO, Inc. εϫΠϓ ຊࢦ λοϓ γΣΠΫ എ໘ λοϓ ۙ
ηϯαʔ Ϙλϯ 43
© ZOZO, Inc. 44 ͲͪΒ5ճத5ճޭʢͯ͢ޭ🎉ʣ ɾԠ͢Δ·ͰͷϨεϙϯε͕͍ ɾखΛୟ͘Α͏ʹͯ͠Γग़ͤΔͷͰ࿅श࣌ͷಈ͖ͱͯࣗ͠વ ɾΰʔϧ࣌ʹେ͖͘ϒϨͯԠͯ͘͠ΕΔ ɹ→ ҆৺ײɾ࿅शͷूதʹͭͳ͕Δ
ۙηϯαʔ ࣮ࡍʹͬͯΈͨ
© ZOZO, Inc. 45 1ճ 2ճ 3ճ 4ճ 5ճ Ϙλϯλοϓ
✖ ⭕ ⭕ ⭕ ✖ 2ຊࢦλοϓ ✖ ✖ ✖ ✖ ✖ ্ํεϫΠϓ ⭕ ✖ ⭕ ✖ ⭕ γΣΠΫ ✖ ✖ ✖ ✖ ✖ എ໘λοϓ ✖ ✖ ✖ ✖ ✖ ۙηϯαʔ ⭕ ⭕ ⭕ ⭕ ⭕ λΠϜ͕ͳ͘औΕΔ࣮ʁ ࣮ࡍʹͬͯΈͨ
© ZOZO, Inc. 46 ແࣄϦϦʔεͰ͖·ͨ͠🎉 🎉 🎉
© ZOZO, Inc. 47 ΞϓϦʹ৭ʑͳϢʔεέʔε͕͋Γɺ ҰͭͷछྨͷΞϓϦͰ͏ਓ͕ҧ͏ͱ࠷దͳػೳҟͳΔ ͏ਓ͕୭ͳͷ͔ߟ͑ͯΞϓϦΛ࡞Ζ͏ ࠓճ࣮ͨ͠தͰۙηϯαʔ͕Ұ൪͏·͘λΠϜ͕औΕͨ ͦͷଞͷΠϯλϥΫγϣϯɺҧ͏༻్Ͱ׆͖ΔͷʹͳΔ ·ͱΊ
© ZOZO, Inc.
None