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
410
技術的負債へ向き合う ~開発速度をいかに向上させるか~
設計パターンをMVVMからFluxに変更し、開発速度を向上させた話です。
Takeshi Akutsu
October 28, 2020
Tweet
Share
More Decks by Takeshi Akutsu
See All by Takeshi Akutsu
機能横断型チームにおける技術改善
takeshiakutsu
3
990
1ヶ月半でプッシュ通知許諾率を17%から40%にあげた話
takeshiakutsu
5
11k
Other Decks in Programming
See All in Programming
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.9k
情報漏洩させないための設計
kubotak
5
1.3k
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
940
アクターシステムに頼らずEvent Sourcingする方法について
j5ik2o
6
700
『改訂新版 良いコード/悪いコードで学ぶ設計入門』活用方法−爆速でスキルアップする!効果的な学習アプローチ / effective-learning-of-good-code
minodriven
28
4.2k
20年もののレガシープロダクトに 0からPHPStanを入れるまで / phpcon2024
hirobe1999
0
1k
DevinとCursorから学ぶAIエージェントメモリーの設計とMoatの考え方
itarutomy
0
150
watsonx.ai Dojo #6 継続的なAIアプリ開発と展開
oniak3ibm
PRO
0
170
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
2.8k
Flatt Security XSS Challenge 解答・解説
flatt_security
0
740
HTML/CSS超絶浅い説明
yuki0329
0
190
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
1
450
Featured
See All Featured
The Language of Interfaces
destraynor
155
24k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.1k
GitHub's CSS Performance
jonrohan
1030
460k
Thoughts on Productivity
jonyablonski
68
4.4k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Mobile First: as difficult as doing things right
swwweet
222
9k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
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"͠ʹ͍͘ॴɺపఈతʹςετΛॻ͘
ऴΘΓʹʜ ٕज़తͳෛ࠴͕θϩʹͳΔ͜ͱͳ͍ͱࢥ͍·͢ɻ ʮෛ࠴ʯʹෛ࠴ΛॏͶΔ͜ͱͤͣɺ ͜·ΊͳϦϑΝΫλϦϯάΛ͍ͯ͘͜͠ͱ͕ ԿΑΓେͳͷͰͳ͍Ͱ͠ΐ͏͔ɻ