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
220
AWAに配属された新卒1年目が 大型機能や新規画面を開発できるようになるまで
CA.swift #13で発表したときのスライドです!
「AWAに配属された新卒1年目が 大型機能や新規画面を開発できるようになるまで」
yodaaa
March 24, 2021
Tweet
Share
More Decks by yodaaa
See All by yodaaa
わたしのおうち時間
yodaaa
0
74
OPENRECで内定者バイトしたまとめ。
yodaaa
0
5.5k
[endless_lt] gitのalias使ってる?[無限LT@3]
yodaaa
0
84
[endless_lt] 就活もUXの時代![無限LT@3]
yodaaa
1
160
[endless_lt] シャツインしてる男、 正直ダサくない?[無限LT@3]
yodaaa
1
170
Other Decks in Programming
See All in Programming
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
1
580
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
1
440
CSC509 Lecture 02
javiergs
PRO
0
400
CSC305 Lecture 04
javiergs
PRO
0
230
Conquering Massive Traffic Spikes in Ruby Applications with Pitchfork
riseshia
0
150
実践AIチャットボットUI実装入門
syumai
7
2.4k
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
930
NetworkXとGNNで学ぶグラフデータ分析入門〜複雑な関係性を解き明かすPythonの力〜
mhrtech
3
980
Build your own WebP codec in Swift
kishikawakatsumi
2
900
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
160
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.9k
Featured
See All Featured
Become a Pro
speakerdeck
PRO
29
5.5k
Visualization
eitanlees
148
16k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Building Applications with DynamoDB
mza
96
6.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6.1k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Faster Mobile Websites
deanohume
310
31k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.7k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
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!