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
3.2k
全力疾走中でも使えるストップウォッチアプリを作る
Ogijun
September 12, 2022
Tweet
Share
More Decks by Ogijun
See All by Ogijun
続・全力疾走中でも使えるストップウォッチアプリを作る 〜LiDARを使った精度への挑戦〜
ogijun2018
1
1.2k
あなたの知らないWWDC現地参加の世界
ogijun2018
0
2.3k
新社会人でも活躍したい!〜新卒1年目で活躍するためのコツ〜
ogijun2018
1
510
Featured
See All Featured
Building Applications with DynamoDB
mza
89
5.8k
Rails Girls Zürich Keynote
gr2m
93
13k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
245
1.2M
Building Your Own Lightsaber
phodgson
101
5.9k
What's new in Ruby 2.0
geeforr
338
31k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
The World Runs on Bad Software
bkeepers
PRO
63
11k
[RailsConf 2023] Rails as a piece of cake
palkan
35
4.4k
4 Signs Your Business is Dying
shpigford
178
21k
Facilitating Awesome Meetings
lara
46
5.8k
A Philosophy of Restraint
colly
200
16k
Stop Working from a Prison Cell
hatefulcrawdad
266
20k
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