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
dsuket
July 08, 2018
Technology
1
1.2k
ぼくのアプリがカイゼンできない
HTML5 APP CONFERENCE 2018 で発表した内容です
https://html5app-conf.connpass.com/event/87730/
dsuket
July 08, 2018
Tweet
Share
More Decks by dsuket
See All by dsuket
RxJS概要とリアクティブ アーキテクチャ
dsuket
4
2k
Other Decks in Technology
See All in Technology
Azure犬駆動開発の記録/GlobalAzureFukuoka2024_20240420
nina01
1
210
VS CodeでAWSを操作しよう
smt7174
8
1.7k
Gitlab本から学んだこと - そーだいなるプレイバック / gitlab-book
soudai
4
410
反実仮想機械学習とは何か
usaito
PRO
11
4.6k
プラットフォームってつくることより計測することが重要なんじゃないかという話 / Platform Engineering Meetup #8
taishin
1
360
GraphQL 成熟度モデルの紹介と、プロダクトに当てはめた事例 / GraphQL maturity model
mh4gf
7
1.3k
IaCジェネレーターとBedrockで詳細設計書を生成してみた
tsukasa_ishimaru
1
160
本当のAWS基礎
toru_kubota
0
520
エンジニアのキャリアをちょっと楽しくする3本の軸/Three Pillars to Make an Engineer's Career More Enjoyable
kwappa
0
2.7k
MapLibreとAmazon Location Service
dayjournal
1
150
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
4
15k
APIファーストなプロダクトマネジメントの実践 〜SaaSus Platformでの例〜 / "Practicing API-First Product Management - An Example with SaaSus Platform
oztick139
0
100
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
422
63k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Embracing the Ebb and Flow
colly
80
4.1k
Building a Modern Day E-commerce SEO Strategy
aleyda
17
6.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
Build your cross-platform service in a week with App Engine
jlugia
225
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
A Philosophy of Restraint
colly
197
16k
Scaling GitHub
holman
457
140k
StorybookのUI Testing Handbookを読んだ
zakiyama
13
4.6k
What's new in Ruby 2.0
geeforr
337
31k
Side Projects
sachag
451
41k
Transcript
18"J04"OESPJEରԠ͢Δ)5.-ΞϓϦΛ ࣮ϓϩμΫτͰ͍͔ʹߏங͠ɺҭ͍ͯͯ͘ͷ͔ɻ ʙॳظ։ൃ͔ΒͷେنϦϑΝΫλϦϯάΛܦͯಘͨݟʙ ぼくのアプリが カイゼンできない!
$.
https://techfeed.io
ࠓ͙͢ݕࡧʂʂ
$.͓ΘΓ
ͷΞϓϦ͕ վળͰ͖ͳ͍ʂ 18"J04"OESPJEରԠ͢Δ)5.-ΞϓϦΛ ࣮ϓϩμΫτͰ͍͔ʹߏங͠ɺҭ͍ͯͯ͘ͷ͔ɻ ʙॳظ։ൃ͔ΒͷେنϦϑΝΫλϦϯάΛܦͯಘͨݟʙ
ϓϩϩʔά ʮͬͨʂ)5.-ΞϓϦͰ͖ͨʂϦϦʔεͩʂʂʯ ͓ΊͰͱ͏͍͟͝·͢ɻ ͔͠͠ɺຊͷΞϓϦ։ൃ ͜Ε͔ΒͩͬͨͷͰ͢ʜ
ޙŋŋŋ ͋ΕʁͳΜ͔ಈ͔ͳ͍ͱ͔ΫϨʔϜདྷͨͧɻ Ϣʔβʔͷ͕ݟ͑ͳ͍ͷͰΤϥʔ͕࠶ݱͰ͖ͳ͍ͳʜ ୀձ͕ଓ͍ͯΔͳ͊ Կ͕ݪҼ͔Α͔͘Βͳ͍ʜ ৽͍͠ػೳΛՃ͠Α͏ʂ طଘίʔυ͕ϘϩϘϩ͗ͯ͢ ϦϑΝΫλϦϯά͠ͳ͍ͱͩɻ ϦϑΝΫλϦϯάͨ͠Βಈ͔ͳ͘ͳͬͨʂ
ࠓ͓͢͠Δ͜ͱ w ΞϓϦग़͔ͯ͠Β͕େมʂ w Γ͍ͨࣄɺΒͳ͖Ό͍͚ͳ͍ࣄ͕ࢁ΄Ͳग़ͯ͘Δ w ۓٸରԠɺόάʹΘΕͯվળͰ͖ͳ͍ w Ͳ͕͜ϙΠϯτͳͷ͔͔Βͳ͍ɺͳʹ͔ΒखΛ͚ͭ Δ͔ࢦඪ͕ͳ͍
w ͱɺͳΒͳ͍ͨΊʹɺ४උΛ͔ͬ͠Γ͠·͠ΐ͏
Ͱͳ͍
ࠓ͍͑ͨ͜ͱ ຬͷ͍͘ͷઈର࡞Εͳ͍ɻૣ͘ϓϩ μΫτΞτͯ͠ࢢͰ͔֬ΊΔɻ ૣ͘ग़ͯ͠ɺૣ͘վળΛճ͢͜ͱ͕ॏཁ ͦͷͨΊͷ)5.-ͷΞϓϦ͡Όͳ͍ͷ͔ɻ ૣ͍ɺ͍҆ɺͦͦ͜͜͏·͍ ͦͷͨΊͷώϯτΛ͓͠͠·͢ɻ
࣍ ٕज़બఆ ։ൃڥ ઃܭ ςετ
ϩΪϯά ࢹ ੳ
ɽٕज़બఆ
͍͖ͳΓΉ͍ͣ ͜Ε͚ͩͰ࣌ؒޠΕͦ͏
ΞϓϦ։ൃͷछྨ wωΠςΟϒΞϓϦ w"OESPJEʢ+BWB ,PUMJOʣ wJ04ʢ0CKFDUJWF$ɼ4XJGUʣ wϋΠϒϦουΞϓϦ wωΠςΟϒϕʔεʢ9BNBSJO$ 3FBDU/BUJWF+4 'MVUUFS%BSUʣ w)5.-ϕʔεʢ$PSEPWB+4ʣ
ͦͦϋΠϒϦουʹ͢Δඞཁ͋Δͷ͔ʁ ʮ"JSCOC3FBDU/BUJWFΊΔͬͯΑʯ ͕ʹͳΓ·ͨ͠Ͷɻ
Φʔόʔϔου w ͕ॏͳΔ΄Ͳ͍ΖΜͳΦʔόʔϔου͕େ͖͍ɻ w ύϑΥʔϚϯε໘Ͱେվળͭͭ͠ΤίγεςϜͷϥΠϑαΠΫ ϧͳͲʹେ͖ͳӨڹɻ w ྫ͑ɺ৽͍͠04όʔδϣϯ͕ग़ͨͱ͖ɺDPSEPWBQMVHJO͕ରԠ͢ Δ·ͰλΠϜϥά͕ΘΓͱ͋Δ͠ɺͷʹΑͬͯରԠ͞Εͳ͍ɻ DPSEPWBωΠςΟϒϕʔεͷϋΠϒϦου
ӽ͑ΒΕͳ͍น ωΠςΟϒ
બఆϑϩʔνϟʔτ w Β͔ͳΞχϝʔγϣϯύϑΥʔϚϯε͕ॏཁʢήʔϜͳͲʣ ˠ:FTωΠςΟϒΞϓϦ w ωΠςΟϒͷ৽͍͠ػೳ͕ඞཁʢ"3ͳͲʣ ˠ:FTωΠςΟϒΞϓϦ w ͦΕҎ֎ʢ࣍1BHFʣ ΫϩεϓϥοτϑΥʔϜͷΞϓϦΛ։ൃ͢Δͱ͖ͷ
ϑϩʔνϟʔτΛߟ͑ͯΈͨ
બఆϑϩʔνϟʔτ w ωΠςΟϒͷ։ൃऀ͕͍Δ w :FTJ04"OESPJEͷͦΕͧΕ͍Δ w :FTˠωΠςΟϒΞϓϦ w /Pʢยํ͔͍͠ͳ͍ʣ w
༧ࢉɺظ͕ؒ͋Δ w :FTˠωΠςΟϒΞϓϦ w /Pʢ༧ࢉɺظ͕ؒͳ͍ʣ ˠϋΠϒϦουΞϓϦʢωΠςΟϒϕʔεʣ ·ͣҰͭͷϓϥοτϑΥʔϜͰ
બఆϑϩʔνϟʔτ w/PʢωΠςΟϒͷ։ൃऀ͕͍ͳ͍ʣ w8FCΞϓϦͷ։ൃ͕ಘҙ w:FTظతӡ༻ͱ֦ு͕ܾ·͍ͬͯͯɺ༧ࢉ͋Δ w:FTˠωΠςΟϒษڧͯ͠ωΠςΟϒͬͨ΄͏͕͍͍ɻ·ͨ ωΠςΟϒϕʔεͷϋΠϒϦου։ൃ w/Pʢ༧ࢉظؒͳ͍ʣ·ͨ18"ϦϦʔε͍ͨ͠ ˠϋΠϒϦουʢ)5.-ϕʔεʣ w/Pʢ8FCΞϓϦͷ։ൃ͕ಘҙͰͳ͍ʣ ˠωΠςΟϒษڧͯ͠ωΠςΟϒͬͨ΄͏͕͍͍ɻ·ͨω
ΠςΟϒϕʔεͷϋΠϒϦου։ൃ
ͪΐͬͱ·ͯɺ)5.-ΞϓϦɺ ΄ͱΜͲग़൪ͳ͍͡Όͳ͍͔ʂʁ
େৎͰ͢ɻ ࣮݁ߏ֘͢Δɻ
)5.-ΞϓϦͷదॴ ͓ۚͱ࣌ؒʹ༨༟͕͋ΔͳΒωΠςΟϒ͕͍͍ʂ ͱ͍͑ɺݱ࣮తʹͦΜͳ͜ͱكɻ ελʔτΞοϓʹ͓͍ͯܧଓੑͱ͔༧ࢉͱ͔͋Δ Θ͚ͳ͍ɻ ࠷ॳίετͰ؆୯ʹ࡞ΕΔ)5.-ΞϓϦͷ ັྗେ͖͍ɻ
ಋೖͱӡ༻ DPSEPWBωΠςΟϒϕʔεͷϋΠϒϦου ӽ͑ΒΕͳ͍น ωΠςΟϒ ಋೖίετ DPSEPWBωΠςΟϒϕʔεͷϋΠϒϦου ӽ͑ΒΕͳ͍น ωΠςΟϒ
ӡ༻ίετ ˞ݸਓͷײͰ͢ ˞ݸਓͷײͰ͢ ۜͷؙͳ͍ɻ ίετΛઌʹ͔࣋ͭɺޙʹπέΔ͔ͷҧ͍ɻ
ɽ։ൃڥ
ݴޠ ͳΜͰ͍͍͕ɺܕॏཁʂ ੩తʢਐతʣܕ͚ݴޠΛڧ͘Φεεϝ͢Δɻ ʢ࠷ۙͷେମ͋Δ5ZQF4DSJQU %BSU ,PUMJO FUDʣ ΞϓϦ͕͍ͯ͘͠ͱ͖ɺϦϑΝΫλϦϯάඞͣى͖Δɻ ͦͷ࣌ɺܕ͕͋Δ͔ͳ͍͔Ͱۤ͠Έ͕େҧ͏ɻ νΣοΫݫ͠Ίʹ
ʢTUSJDU/VMM$IFDLTɺTUSJDU1SPQFSUZ*OJUJBMJ[BUJPOͱ͔0/ʹ͍ͨ͠ʣ
)PU3FMPBE -JWF3FMPBE)PU3FMPBEͬͺཉ͍͠ -JWF3FMPBE ιʔε͕มߋ͞ΕΔͱϏϧυ͞Εͯը໘͕ࣗಈͰϦϩʔυ͞ΕΔɻ )PU3FMPBE ιʔε͕มߋ͞ΕΔͱϏϧυ͞Εͯը໘ͷҰ෦͕ࣗಈͰஔ͖ΘΔɻ ࠷ۙͷ'8େମͬͯΔ
։ൃ༻ΞϓϦ ։ൃ༻ͱຊ൪༻ͷΞϓϦ͚ͨ΄͏͕͍͍ɻ Ͱ͖Εεςʔδϯάɻ ຖճΞϓϦΛ্ॻ͖Πϯετʔϧͱ͔໘͗͢Ͱ͢ΑͶɻ Γํ'8ʹΑͬͯ৭ʑɻجຊόϯυϧ*%Λ͚Δ
ɽઃܭ
4FSWJDFͷઃܭ w ϏδωεϩδοΫΛ୲͏ʢ"OHVMBSͰ4FSWJDFͳͲʣ ϑϨʔϜϫʔΫʹґଘ͠ͳ͍ w ͪΖΜ7JFXʹґଘ͠ͳ͍ w ͱ͍͑ɺΓґଘ͢Δͷ͋Δɻ w ͦΕΒ$POUSPMMFSͱͯ͠4FSWJDFͱผʹཧ͢Δɻ
୯ମςετ͘͢͠ͳΓɺϙʔλϏϦςΟ্͕Δɻ ˓4FSWJDF4FSWJDF ˓$POUSPMMFS4FSWJDF ˓$POUSPMMFS7JFX º4FSWJDF7JFX º4FSWJDF$POUSPMMFS
4FSWJDFͷઃܭ w QVCMJDͳΠϯλʔϑΣʔεجຊతʹશͯ 4USFBNPS1SPNJTFΛฦ͢ɻ w ޙ͔Βඇಉظʹ͢ΔͷπϥΠͨΊɺ࠷ॳ͔Β ඇಉظʹ͓ͯ͘͠ɻ w &4ͳΒBTZODBXBJU͔ͭ͏ͱ؆୯ɻ ֦ுੑͱϙʔλϏϦςΟ্͕͕Δɻ
1SFTFOUBUJPOBM$PNQPOFOUT w 1SFTFOUBUJPOBM %VNC DPNQPOFOU w ೖ͞ΕͨσʔλΛදࣔ͢Δ͚ͩɻ w ࠶ར༻ੑ͕ߴ͍ w
$POUBJOFS 4NBSU DPNQPOFOU w 1SFTFOUBUJPOBMσʔλΛͨ͠Γɺෳ੍ޚͨ͠Γ͢Δɻ w ͋ΔఔͷػೳΛ࣋ͬͨͷͰɺڽͬͨ7JFX࣋ͨͳ͍ɻ 4FF1SFTFOUBUJPOBMBOE$POUBJOFS$PNQPOFOUT IUUQTNFEJVNDPN!EBO@BCSBNPWTNBSUBOEEVNCDPNQPOFOUTDBGBDE
ɽςετ
ΫϥΠΞϯτςετ ςετॏཁɻ ͔͠͠ɺΫϥΠΞϯτςετ͍͠ɻ ͳ͍͔ͥ͠ʁ ɾͦͦ6*ͷςετ͠ΜͲ͍ ɾͦΕʹՃ͑ͯ6*සൟʹมΘΔɻ ɾै͢Δͷϝϯςφϯείετ͕ߴ͍ ςετͷରΛߜΔ ɾ4FSWJDFʢϏδωεϩδοΫʣͷςετΛத৺ʹ ɾྑ͘όά͕ग़Δɺக໋తͳͱ͜Ζ6*ςετ
ΫϥΠΞϯτςετߏ w ϩʔΧϧςετʢσόοάʣ ,BSNB +BTNJOF $ISPNF w $*αʔό ,BSNB +BTNJOF
$ISPNF)FBEMFTT
ϓϩμΫγϣϯίʔυͷܕͱςετͰଅਐ ͞ΕΔʂ ܕͰ੩తʹνΣοΫ͠ɺಈతͳ༷ςετͰ୲อ͢Δɻ ͜ΕΒೋ͕ͭ͋ΔͱɺվળͷͨΊͷϦϑΝΫλϦϯά ڪ͘ͳ͍ʂ ෭࡞༻ͱͯ͠ ςετ͍͢͠ίʔυΛҙࣝ͢Δͱɺίʔυ͕ݟ௨͠Α͘៉ྷʹͳΔɻ
ɽϩΪϯά
ϩάͷछྨ wΞϓϦέʔγϣϯϩά ΞϓϦέʔγϣϯͷڍಈͷϩάɻओʹ%FCVH༻ wૢ࡞ϩά ͲͷϘλϯΛԡͨ͠ͷ͔ɺΛೖྗ͔ͨ͠Ϣʔβʔૢ࡞ͷϩά wύϑΥʔϚϯεϩά ॳظԽ࣌ؒɺը໘ϩʔυɺߋ৽ύϑΥʔϚϯεͷଌఆ݁Ռ wΤϥʔϩά Τϥʔ͕ى͖ͨͱ͖ͷϩάɻোղੳʹඞਢ
DMJFOUMPHHFS ཁ݅ w ϩάϨϕϧʹΑΔग़͚͠ w αʔόͷૹ৴ w ·ͱΊͯѹॖɺΤϥʔ࣌ͷԆ࠶ૹͳͲ 5FDI'FFEͰࣗ࡞ͨ͠
ϩάσʔλ ΫϥΠΞϯτϩάʹඞཁͳ߲ w *% w ࣌ࠁ w ϓϥοτϑΥʔϜʢJ04 BOESPJE XFCʣͱόʔδϣϯ
w "QQόʔδϣϯ w Ϣʔβ*%ʢϩάΠϯͯ͠Εʣ w ૢ࡞*% w ը໘*% w Τϥʔʢ͋Εʣ
ɽࢹ
ࢹ ࢹ߲ w %#ɺαʔόʔɺ"1*ͷࢮ׆ࢹ w $16ɺϝϞϦɺ%JTLͳͲͷϦιʔεࢹ w ΞϓϦέʔγϣϯͷϩάࢹ w ύϑΥʔϚϯεࢹ
ࢹαʔϏε w .BDLFSFM /FXSFMJD EBUBEPHͳͲ
ɽੳ
ੳ w 8FC(PPHMF"OBMZUJDTɺΞϓϦͰ'JSFCBTF "OBMZUJDT͕Ұൠత w 5FDI'FFEͰ18"ͱซͤͯ("Ͱߦ͍ͬͯΔ w 1BHF7JFXɺ&WFOUͷଌఆ͕ॏཁ w ผ్#JH2VFSZ׆༻
·ͱΊ
·ͱΊ w ΞϓϦΛܧଓతʹվળ͢ΔώϯτΛհ͠·ͨ͠ɻ w શ෦ΛΔඞཁͳ͍ɻ w ܕͱςετॏཁͳͷͰڧ͘Φεεϝɻ w ४උʹ͔͚࣌ؒ͗ͯ͢ϦϦʔεͰ͖ͳ͍ͷຊసɻ ਐతʹվળ͍͚ͯ͠Α͍ɻ
w ͜͏͍͏͜ͱΛ5FBNͰೝࣝͯ͠ߦ͏֮ޛ͕ඞཁɻ
ʮ֮ޛʼnͱ ΞϓϦ͕͖͢ ಓΛΓ։͘͜ͱͩο
օ༷ͷΞϓϦ͕ ࢁϦϦʔε͞Ε·͢Α͏ʹɻ ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ