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
AWAに配属された新卒1年目が 大型機能や新規画面を開発できるようになるまで
Search
yodaaa
March 24, 2021
Programming
0
150
AWAに配属された新卒1年目が 大型機能や新規画面を開発できるようになるまで
CA.swift #13で発表したときのスライドです!
「AWAに配属された新卒1年目が 大型機能や新規画面を開発できるようになるまで」
yodaaa
March 24, 2021
Tweet
Share
More Decks by yodaaa
See All by yodaaa
わたしのおうち時間
yodaaa
0
61
OPENRECで内定者バイトしたまとめ。
yodaaa
0
5.1k
[endless_lt] gitのalias使ってる?[無限LT@3]
yodaaa
0
74
[endless_lt] 就活もUXの時代![無限LT@3]
yodaaa
1
150
[endless_lt] シャツインしてる男、 正直ダサくない?[無限LT@3]
yodaaa
1
160
Other Decks in Programming
See All in Programming
Make Impossible States Impossibleを 意識してReactのPropsを設計しよう
ikumatadokoro
0
150
どうして僕の作ったクラスが手続き型と言われなきゃいけないんですか
akikogoto
1
100
Java ジェネリクス入門 2024
nagise
0
700
Jakarta Concurrencyによる並行処理プログラミングの始め方 (JJUG CCC 2024 Fall)
tnagao7
1
280
プロジェクト新規参入者のリードタイム短縮の観点から見る、品質の高いコードとアーキテクチャを保つメリット
d_endo
1
1.1k
PHP でアセンブリ言語のように書く技術
memory1994
PRO
1
160
現場で役立つモデリング 超入門
masuda220
PRO
15
3.1k
AI時代におけるSRE、 あるいはエンジニアの生存戦略
pyama86
4
1.1k
JavaでLチカしたい! / JJUG CCC 2024 Fall LT
nhayato
0
120
PLoP 2024: The evolution of the microservice architecture pattern language
cer
PRO
0
2.5k
Nurturing OpenJDK distribution: Eclipse Temurin Success History and plan
ivargrimstad
0
620
アジャイルを支えるテストアーキテクチャ設計/Test Architecting for Agile
goyoki
9
3.2k
Featured
See All Featured
The Cost Of JavaScript in 2023
addyosmani
45
6.7k
Intergalactic Javascript Robots from Outer Space
tanoku
269
27k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
Rails Girls Zürich Keynote
gr2m
94
13k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Side Projects
sachag
452
42k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
25
1.8k
Unsuck your backbone
ammeep
668
57k
A Tale of Four Properties
chriscoyier
156
23k
How to Ace a Technical Interview
jacobian
276
23k
Into the Great Unknown - MozCon
thekraken
32
1.5k
Transcript
AWAʹଐ͞Εͨ৽ଔ1͕ େܕػೳ৽نը໘Λ։ൃͰ͖ΔΑ͏ʹͳΔ·Ͱ CA.swift #13 Masaaki Yoda 2021/03/24
• 20204݄ʹiOSΤϯδχΞͱͯ͠৽ଔೖࣾ • AWAʹଐ͞ΕiOSΞϓϦ։ൃΛ͓͜ͳ͍ͬͯ·͢ • ࠷ۙϋϚ͍ͬͯΔ͜ͱɺࠓߋεϓϥτΡʔϯ • ָ͠Έʹ͍ͯ͠Δ͜ͱɺϞϯϋϯͰ͢ʂ yodaaa @yodaaa_tech
Masaaki Yoda
ೖࣾ·Ͱ
ೖࣾ͢Δ·Ͱͷ։ൃྺ • ΞϓϦΛ࡞Γͨͯ͘ใֶՊʹೖֶͯ͠ɺֶͼ࢝ΊΔ • ݸਓͰΞϓϦ։ൃΛ࢝ΊΔ • ݚڀͰॴݶఆSNSͷݚڀɺडୗ։ൃͰത͚ؗARΞϓϦ։ൃͰARKitʹ৮ΕΔ • ೖࣾ͢Δ·ͰʹɺఆऀόΠτͰOPENRECͰ1ϲ݄iOS։ൃɺ ɹɹ
CAMͷ͍ࣄۀͰ1ϲ݄αʔόʔαΠυ തؗARΞϓϦ ۚܦࡁ৽ฉ͔Β ఆऀόΠτ
ೖࣾ͢Δ·ͰεΩϧ • ݸਓ։ൃݚڀͰFatViewControllerΛେྔੜ • ݚڀडୗ։ൃͰARKitʹ৮Ε͔ͯͬΓ • FirebaseͰSNSΛݚڀͰ࡞ͬͨΓɺݸਓ։ൃͳͷʹBitriseಋೖͨ͠Γ • ఆऀόΠτΛ͢Δ͜ͱͰɺΞʔΩςΫνϟϦΞΫςΟϒʹ৮Εͩ͢ •
RxSwiftΫϦʔϯΞʔΩςΫνϟΛงғؾͰ৮ΕΔ
ೖࣾͯ͠
AWA • ఆ੍ֹԻָετϦʔϛϯάαʔϏε • 2000ສDLҎ্ • 8000ສۂ͕ௌ͖์
LOUNGE -ϥϯδ- ৽ػೳ
ೖ͔ࣾͯ͠Βͷ1ؒ ೖࣾ 4 5 6 7 8 ৽ଔݚम ←δϣϒϩʔςʔγϣϯظؒ→ ABEMA
AWA 9 10 11 12 1 2 3 ਖ਼ࣜଐ େ͖ͳػೳ ৽نը໘Ճ • ೖ͔ࣾͯ͠Βͷ1ؒɺݚमɺδϣϒϩʔςʔγϣϯΛܦͯɺAWAʹଐʹͳΓ·ͨ͠
ೖ͔ࣾͯ͠Βͷ1ؒ • ͬͨ͜ͱϦετ ϩʔσΟϯάը໘shimmerվमɹExplicitରԠɹHapticTouchରԠ CPUͱϝϞϦͷ༻ΛݟΕΔσόοάػೳɹΧελϜεΠονͷUI࣮ ࠶ੜཤྺͷαʔόʔཧԽɹϔομʔσβΠϯͷมߋରԠ PanModalόάௐࠪͳͲ ɹAPIߋ৽ͱϖʔδϯάվળ ϥϯδϦΫΤετը໘ͷ࣮ɹϥϯδҰཡը໘ɾ։࠵༧ఆҰཡը໘ͷ࣮ …
ೖ͔ࣾͯ͠Βͷ1ؒ ϩʔσΟϯάը໘shimmerվमɹExplicitରԠɹHapticTouchରԠ CPUͱϝϞϦͷ༻ΛݟΕΔσόοάػೳɹΧελϜεΠονͷUI࣮ ࠶ੜཤྺͷαʔόʔཧԽɹϔομʔσβΠϯͷมߋରԠ PanModalόάௐࠪͳͲ ɹAPIߋ৽ͱϖʔδϯάվળ ϥϯδϦΫΤετը໘ͷ࣮ɹϥϯδҰཡը໘ɾ։࠵༧ఆҰཡը໘ͷ࣮ … • ͬͨ͜ͱϦετ
[࠶ੜཤྺͱ] • ࠶ੜͨ͠ۂɺΞʔςΟετΞϧόϜɺϓϨΠϦετͳͲͷ ͜ͱ • ͱͱ֤ʹอଘ͍ͯͨ͠ͷΛαʔόʔͰཧ͢Δ Α͏ʹ͓͜ͳ͏λεΫ • APIΛܦ༝ͯ͠ཤྺΛՃߋ৽ɺআ •
ΦϑϥΠϯ࣌ͷఆ͠ͳ͚ΕͳΒͳ͍ • ΩϟογϡΛ׆༻࣮ͨ͠ ࠶ੜཤྺͷαʔόʔཧԽ ※ͪ͜Βͷը૾ϒϥʔՃ͍ͯ͠·͢
[͓͜ͳͬͨ͜ͱ] • ࠶ੜཤྺͷऔಘͱআɺUIө • API͔Βཤྺσʔλऔಘ͠Realmʹอଘɺσʔλʹߋ৽͕͋ΕUIʹө • APIʹཤྺͷআϦΫΤετૹ৴ • ΦϑϥΠϯʹؔ͢Δ࣮ •
ΦϑϥΠϯڥͰཤྺʹөͰ͖ΔΑ͏ͳػߏͷ࣮ • ࠶ੜ։࢝ใࠂ • ࠶ੜͨ͜͠ͱΛαʔόʔଆʹใࠂ͢Δ࣮ ࠶ੜཤྺͷαʔόʔཧԽ
[શମ] • ணखͨ͠ࡍʹఆͰ͖͍ͯͳ͍ͱ͜Ζ͕͋Γɺ͔ͳΓӨڹൣғ͕େ͖͘λεΫ • ݁ՌΖΖؚΊͯ2ϲ݄ऑͷ։ൃظؒʹ • ϓϩδΣΫτཧղ͕ઙ͘ɺӨڹ͕ಡΊͣɺλεΫͷશମײ͕શવݟ͍͑ͯͳ͔ͬͨ • ϨεϙϯεͰΓ͍ͯͳ͍ͱ͜ΖΛαʔόʔʹґཔͯ͠ਐΊΒΕͨ •
༷͕ܾ·ͬͯͳ͍ͱ͜ΖɺܾΊΔͱ͜Ζ͔ΒͰ͖ͨ [ٕज़] • APIपΓ, Realmͷཧղ͕ਂ·ͬͨ • RxͰ͋ͬͨΓɺߴ֊ؔͳͲগͣͭ͠ཧղͱ׳Ε͕Ͱ͖ͨ • ίʔσΟϯάϧʔϧࡉ͔ͳࢦఠଟ͔ͬͨ • ·ͨɺશମతͳਐΊํͱ͔ͯ͠ͳΓαϙʔτΛΒͬͨ ࠶ੜཤྺͷαʔόʔཧԽ
৽نը໘࣮ -ϥϯδҰཡ - [ϥϯδҰཡ] • όφʔɺࢀՃͨ͠ϥϯδɺ͓͢͢Ίͷϥϯδ • TableViewʹCollectionViewஔͨ͠UI࣮ • ͓͢͢Ίཧ༝දࣔͰηϧͷߴ͞ҟͳΔ
• PullToRefresh, Deeplink, ۭදࣔͳͲͷཁૉ
৽نը໘࣮ -ϥϯδҰཡ - [શମ] 👌 Good ɾ࣮ํΛissueͰ͔ࣔͯ͠Β࣮ਐΊΒΕͨ͜ͱ 🚀 Improve •
։ൃʒʹؒʹ߹Θ͔ͣͭόΪʔͳঢ়ଶʹ • Δ͖͜ͱΘ͔͍͕ͬͯͨɺ࣮ࡍʹͬͯΈΔͱ͔ͳΓ͕͔͔࣌ؒͬͨ • ·ͨɺCollectionView͋ͨΓͰϋϚͬͯ͠·͍େ෯ʹ͕͔͔࣌ؒͬͨ [ٕज़] 👌 Good ɾΧελϜCellͳͲΛࡉ͔࣮ͬͯͨ͘͠ 🚀 Improve ɾViewCellΛͬͱߴͰ࣮͍ͨ͠
৽نը໘࣮ -։࠵༧ఆҰཡ - [ϥϯδ։࠵༧ఆҰཡ] • ϥϯδͷެࣜ։࠵༧ఆҰཡΛදࣔ͢Δը໘ 👌 Good • ༧Ίΰʔϧ͔Βٯࢉͨ͠σΠϦʔඪΛཱͯͨ͜ͱͰ͏·͘ਐΊΒΕͨʂ
• ৽نը໘Λܦݧͨ͋͠ͱͳͷͰɺ࣮ʹ͔͔Δͷਫ਼͕up↑ 🚀 Improve • Ͳ͏࣮͢Δ͔Μͩ(ϨεϙϯεΛ͝ͱʹ·ͱΊͯηΫγϣϯԽ͢Δ)
ࠓޙ • PRͰͷࢦఠQA͔ΒͷόάใࠂͳͲͷΛ͞ΒʹݮΒ͍ͯ͘͠💪 • ࣮εϐʔυͷ্💪 • ࣄۀతʹΓ͍ͨ͜ͱΛٕज़Ϧιʔε͕ͳ͍͜ͱͰΔ͜ͱ͕ͳ͍Α͏ • ϓϨΠϠʔʹ͓͚Δཧղ💪 •
ಠࣗͰ࡞͍ͬͯΔͷΛগ͠Ͱཧղ͍ͯ͘͠ͱ͜Ζ͔Β
Thanks!