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
Takeshi Akutsu
October 28, 2020
Programming
2
450
技術的負債へ向き合う ~開発速度をいかに向上させるか~
設計パターンをMVVMからFluxに変更し、開発速度を向上させた話です。
Takeshi Akutsu
October 28, 2020
Tweet
Share
More Decks by Takeshi Akutsu
See All by Takeshi Akutsu
機能横断型チームにおける技術改善
takeshiakutsu
3
1.1k
1ヶ月半でプッシュ通知許諾率を17%から40%にあげた話
takeshiakutsu
5
11k
Other Decks in Programming
See All in Programming
AIで開発生産性を上げる個人とチームの取り組み
taniigo
0
130
XP, Testing and ninja testing ZOZ5
m_seki
3
320
SpecKitでどこまでできる? コストはどれくらい?
leveragestech
0
560
CSC305 Lecture 03
javiergs
PRO
0
230
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
150
WebエンジニアがSwiftをブラウザで動かすプレイグラウンドを作ってみた
ohmori_yusuke
0
170
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
200
詳しくない分野でのVibe Codingで困ったことと学び/vibe-coding-in-unfamiliar-area
shibayu36
3
4.5k
大規模アプリのDIフレームワーク刷新戦略 ~過去最大規模の並行開発を止めずにアプリ全体に導入するまで~
mot_techtalk
0
380
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
2
610
dynamic!
moro
9
6.6k
フロントエンド開発に役立つクライアントプログラム共通のノウハウ / Universal client-side programming best practices for frontend development
nrslib
7
3.9k
Featured
See All Featured
Navigating Team Friction
lara
189
15k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.2k
How to Think Like a Performance Engineer
csswizardry
27
2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Why Our Code Smells
bkeepers
PRO
339
57k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.2k
Speed Design
sergeychernyshev
32
1.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
The Language of Interfaces
destraynor
162
25k
Fireside Chat
paigeccino
40
3.7k
Transcript
ٕज़తෛ࠴͖߹͏ d։ൃΛ͍͔ʹ্ͤ͞Δ͔d גࣜձࣾλΠϛʔ Ѩٱַࢤ
None
ࠓͷྲྀΕ ٕज़తෛ࠴ͱ ٕज़తෛ࠴ͱ ͦͷ݁Ռੜ͡Δ λΠϛʔͰͲͷΑ͏ʹରԠ͔ͨ͠ ։ൃͷվળ ෆ۩߹Λى͜͞ͳ͍ͨΊʹ ·ͱΊ
ٕज़తෛ࠴ͱ ΟΩϖσΟΞ ٕज़తෛ࠴ʢӳ5FDIOJDBMEFCUʣͱɺߦ͖ͨΓ ͬͨΓͳιϑτΣΞΞʔΩςΫνϟͱɺ༨༟ͷͳ͍ιϑ τΣΞ։ൃ͕Ҿ͖ى݁͜͢Ռͷ͜ͱΛࢦ͢৽͍͠ൺᄻͰ͋ Δɻʮઃܭ্ͷෛ࠴ EFTJHOEFCU ʯͱݴ͏ɻ
ٕज़తෛ࠴ͱ ΥʔυɾΧχϯΨϜ 4IJQQJOHpSTUUJNFDPEFJTMJLFHPJOHJOUPEFCU ʢ࠷ॳͷίʔυΛग़ՙ͢Δ͜ͱɺआۚΛ͠ʹߦ͘ͷͱಉ͡Ͱ͋Δɻʣ
ٕज़తෛ࠴ͱ ͭ·Γʜ ෛ࠴ɺ༨༟ͷͳ͍։ൃʹΑͬͯੜΈग़͞ΕΔͷͰ͋Γɺ αʔϏεΛ։ൃ্͍ͯ͘͠Ͱආ͚Δ͜ͱग़དྷͳ͍ɻ
ٕज़తෛ࠴ͱ ͦͷ΄͔ʹ༷ʑͳݪҼ͕͋Δ ͦͷ࣌ͦͷ࣌Ͱͷ։ൃνʔϜɾڥͷมԽ ݴޠ༷ɾ։ൃڥͷΞοϓσʔτ ϝϯόʔͷεΩϧ্ঢʢʹΑΓաڈͷίʔυ͕ෛ࠴ʹײ͡Δʣ ͳͲʜ
ٕज़తෛ࠴ͱ ٕज़తෛ࠴ʹΑͬͯੜ͡Δ ։ൃͷԼ ෆ۩߹͕ൃੜ͘͢͠ͳΔ
λΠϛʔͰ ٕज़తෛ࠴ʹΑΓ ʮ։ൃ͕Լ͢Δʯ ʮෆ۩߹͕ൃੜ͘͢͠ͳΔʯ ͱݴ͏ʹͲ͏ରԠͨ͠ͷ͔ɻ
ʮ։ൃͷԼʯͱ͍͏ ઃܭΛݟ͢͜ͱͰվળͨ͠ .77.͔Β'MVYҠߦ·ͨ͠ɻ
ʮ։ൃͷԼʯͱ͍͏ ۩ମతʹͲ͏͍͏͕ى͍ͬͯͨ͜ͷ͔ ΑΓྑ͍6*69Λٻ͢ΔͨΊɺ ࡉ͔͍ɾܧଓతͳ7JFXͷվળ͕ߦΘΕ͍ͯΔɻ ͔͠͠ɺσβΠϯ্ࠣࡉͳมߋͩͱͯ͠ઃܭͷ߹্ɺ मਖ਼ʹ૾Ҏ্ͷ͕ൃੜ͢Δ͜ͱ͕ଟʑ͋ͬͨ
ʮ։ൃͷԼʯͱ͍͏ มߋલ มߋޙ σβΠϯมߋ͞Ε͍ͯΔ͕ɺ ϏδωεϩδοΫԿมΘ͍ͬͯͳ͍ɻ σβΠϯ্ͷมߋՕॴ मਖ਼ཧ༝Λهೖ͢ΔλΠϛϯά͕มΘͬͨ ʮۀ࣌ؒʯͱʮٳܜ࣌ؒʯΛೖྗ͢Δը໘
͕ผʑʹͳͬͨ ϩδοΫʜ ʮۀ։࢝࣌ؒɾऴྃ࣌ؒɺٳܜ࣌ؒɺमਖ਼ཧ༝ Λೖྗ͢Δʯͱݴ͏ߦҝมΘΒͳ͍
ʮ։ൃͷԼʯͱ͍͏ .77.࣌ ̍ը໘ʹ͖ͭɺͭͷ7JFX.PEFMΛ࣋ͭͱݴ͏ํͰ։ൃ͍ͯͨ͠
ʮ։ൃͷԼʯͱ͍͏ .77.࣌ͷͭΒΈᶃ ֤ը໘͝ͱʹϩδοΫΛ͍࣋ͬͯΔͨΊɺͭͷը໘ͰߦΘΕ͍ͯͨॲཧ ͕σβΠϯͷมߋʹΑΓଞͷը໘ͰߦΘΕΔΑ͏ʹͳΔͱɺϩδοΫ· Ͱमਖ਼ΛՃ͑Δඞཁ͕ग़ͯ͘Δɻ ʢ7JFXͷมߋͳͷʹɺϩδοΫΛमਖ਼͠ͳ͍ͱ͍͚ͳ͍ͷਏ͍ ʣ ྫٳܜ࣌ؒͷೖྗ͕ผͷը໘ͰߦΘΕΔΑ͏ʹͳͬͨ
ʮ։ൃͷԼʯͱ͍͏ .77.࣌ͷͭΒΈᶄ ෳͷը໘ʹ·͕ͨͬͯॲཧ͕ߦΘΕͨ࣌ɺ ը໘ؒͷͷड͚͕͠ਏ͍
ʮ։ൃͷԼʯͱ͍͏ 'MVY࣌ ֤ػೳ͝ͱʹϩδοΫΛཧ͢ΔΑ͏ʹͳͬͨ ը໘ׂ͕͞ΕΑ͏͕ϩδοΫͷमਖ਼ෆཁ ڞ௨ͷ4UPSFΛͭอ࣋͢Δ͚ͩͰࡁΉͷͰɺෳͷը໘ʹ·ͨ ͕ͬͨॲཧ؆୯
ʮෆ۩߹Λ͙ʯͨΊʹߦ͍ͬͯΔ͜ͱ దͳ୯ҐͰϞδϡʔϧׂΛߦ͍ͬͯΔ खಈͰ2"͠ʹ͍͘ॴʹςετΛపఈ
ʮෆ۩߹Λ͙ʯͨΊʹߦ͍ͬͯΔ͜ͱ ᶃదͳ୯ҐͰϞδϡʔϧׂΛߦ͏ ॲཧDMBTTͰด͡ΔΑ͏ʹ దͳ୯ҐʹDMBTTΛΓ͚Δ ֤ػೳΛ'SBNFXPSLʹΓ͚Δ
ʮෆ۩߹Λ͙ʯͨΊʹߦ͍ͬͯΔ͜ͱ ᶄखಈͰ2"͠ʹ͍͘ՕॴʹςετΛॻ͘ શͯΛςετͰ୲อͰ͖͍ͯΔΘ͚Ͱͳ͍ खಈͰͷ2"͕ࠔͳՕॴΛத৺ʹςετΛॻ͍͍ͯΔ ʢىಈपΓɺཁૉͷpMUFSTPSUɺ֤छঢ়ଶʣ ܕ͋Δछͷςετ ςετ͕͋Δͱ͍͑ɺಡΈ͍͢ίʔυৗʹҙࣝ
·ͱΊ ᶃదͳઃܭύλʔϯΛ࠾༻͢Δ͜ͱͰ։ൃΛ্͢ Δ͜ͱ͕Ͱ͖ͨ ᶄదͳ୯ҐͰϞδϡʔϧׂΛ͢Δ͜ͱͰෆ۩߹Λ͍ Ͱ͍Δ ᶅखಈͰ2"͠ʹ͍͘ॴɺపఈతʹςετΛॻ͘
ऴΘΓʹʜ ٕज़తͳෛ࠴͕θϩʹͳΔ͜ͱͳ͍ͱࢥ͍·͢ɻ ʮෛ࠴ʯʹෛ࠴ΛॏͶΔ͜ͱͤͣɺ ͜·ΊͳϦϑΝΫλϦϯάΛ͍ͯ͘͜͠ͱ͕ ԿΑΓେͳͷͰͳ͍Ͱ͠ΐ͏͔ɻ