Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
JSConf jp 2021 kaonavi front-end development in...
Search
South
March 25, 2022
Programming
280
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JSConf jp 2021 kaonavi front-end development in the monolithic service
South
March 25, 2022
More Decks by South
See All by South
Automating Web Accessibility Testing with AI Agents
maminami373
1
2.1k
TSConfig Solution Style & subpath imports to switch types on a per-file basis
maminami373
2
370
JSConf JP 2022 introduce React Query
maminami373
2
7.5k
Front-end rearchitect SPA
maminami373
0
580
単体テストゼロからテスト文化を醸成させた話 / Fostering the testing culture
maminami373
0
2.6k
Other Decks in Programming
See All in Programming
RAG の “R” を Swift で覗いてみる 〜「意味から探す」検索の仕組み〜
nao_randd
0
170
[2026-10-09]一枚の布で作らなくてもいい。 信頼性は「パッチワーク」で紡がれる~既存の運用と新しい可能性をつなぎ合わせてきたCREの話~
tosite
0
110
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
6.9k
作って学ぶSpring BootのAuto Configuration / JJUG Night Seminar 2026-10-19
rshindo
0
210
graphql-ruby を Spinel で速くしようとした話
mtsmfm
0
120
Performance Optimization With LLMs
xleitix
0
200
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
240
PumaからFalconに移行したRailsアプリケーションでの実践
falcon8823
0
200
APNsからLive Activityを開始する話
yumnumm
0
170
Simple Storage Service(S3) is not simple
iwatsukayura
0
320
Vue Fes Japan の “作る側”に関わってみて
naokihaba
1
180
dotNET_vulnclicker_intro.pdf
deka_morita
0
150
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
860
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
Embracing the Ebb and Flow
colly
88
5.2k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
950
How GitHub (no longer) Works
holman
316
150k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
330
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
SEO for Brand Visibility & Recognition
aleyda
0
4.8k
A better future with KSS
kneath
240
18k
Building Applications with DynamoDB
mza
96
7.2k
Transcript
ؒ͠ଓ͚͖ͯͨ ϞϊϦγοΫαʔϏεʹ͓͚Δ ϑϩϯτΤϯυ։ൃ +4$POG+1 גࣜձࣾΧΦφϏ:VVLJ.JOBNJ
w :VVLJ.JOBNJ w ݄ΧΦφϏೖࣾ w ϑϩϯτΤϯυࢧԉνʔϜ !"#"$%#"$&"$%#"$
͢͜ͱ ͷ։ൃʹΑΓ େྔͷίʔυ͕ੵ͞ΕͨαʔϏεʹ͓͚Δ ϑϩϯτΤϯυ։ൃͷऔΓΈ
ΧΦφϏʹ͍ͭͯ
None
ٕज़ελοΫ 'SPOUFOE #BDLFOE *OGSBTUSVDUVSF 0UIFST
ωοτϫʔΫߏ ˞େ෯ʹ؆ུԽ͍ͯ͠Δ
3FBDUϨϯμϦϯάͷϑϩʔ ϦΫΤετ ϧʔςΟϯά $POUSPMMFS"DUJPO͕7JFXΛ443ͯ͠ฦ٫ ΫϥΠΞϯταΠυͰόϯυϧΛϩʔυ 3FBDU%0.SFOEFS -BSBWFM
'JSTUDPNNJU αʔϏεࣗମ͜ͷίϛοτҎલΑΓఏڙ͓ͯ͠Γ ݱߦͷϦϙδτϦόʔδϣϯܥͱݺΕΔͷ લ
ΤϯδχΞ ໊ Ұिؒ͋ͨΓͷ Ϛʔδίϛοτ ίϛοτ ίʔυྔ ສߦ ˞ςετίʔυΛআ͘
1)1ສߦ K2VFSZສߦ 3FBDUສߦ ίʔυྔ ສߦ ༁
K2VFSZͱ3FBDU
3FBDUͷಋೖ w 3FBDUಋೖҎલK2VFSZ -BSBWFMͷςϯϓϨʔτΤϯδϯʢ#MBEFʣ w dʹ͔͚ͯ3FBDUΛಋೖ w ಋೖҎ߱৽ػೳʢ৽نϖʔδʣΛ3FBDUº5ZQF4DSJQU w ঢ়ଶཧ3FEVY
5PPMLJU w $44JO+4TUZMFEDPNQPOFOUT
K2VFSZͱ3FBDUͷڞଘ ಛఆͷ݅ԼͷΈͰڐ༰ ͦΕͧΕ͕6*ͱͯ͠ಠཱ͍ͯ͠Δ ͦΕͧΕͷؒͰσʔλঢ়ଶͷड͚͕͠ۃྗͳ͍
6*ͱͯ͠ಠཱ͍ͯ͠Δ w Ϟʔμϧ φϏήʔγϣϯͳͲ w K2VFSZଆͷάϩʔόϧͳ$44ͷӨڹΛड͚͕ͪ w K2VFSZͷ໋ྩతͳ%0.ͷมߋɾഁغͷӨڹΛड͚ΔՄೳੑ
σʔλঢ়ଶͷड͚͕͠ۃྗͳ͍ w K2VFSZͱͷ࿈ܞʹ໋ྩతͳهड़͕ඞཁͰ͋Γɺએݴత6*ʹԊ͍ͬͯͳ ͍͠อकͭΒ͍ w 3FBDUͷॳճϨϯμʔͷͨΊʹඞཁͳσʔλٴͼɺ3FBDUͷ6*ͰϢʔ βʔ͕ߦͬͨॲཧ͔ΒಘͨσʔλΛ࠷ऴతʹฦ͢ࡍ͜ΕʹݶΒͳ͍
݅ʹͯ·Βͳ͍߹ɾɾɾ K2VFSZͱ3FBDU྆ऀͷίʔυΛ͏͜ͱʹͳΓ ։ൃऀମݧɾอकੑΛଛͳ͍͔Ͷͳ͍
ΧελϜΠϕϯτΛఆٛ PO ͷҾͱͯ͠σʔλΛ ड͚औΓ1SPQTͱͯ͢͠ K2VFSZଆͰϨϯμϦϯά͠ ͍ͨλΠϛϯάͰύϥϝʔ λͱڞʹUSJHHFS
ൃՐ ڞଘͷ࣮ྫ K2VFSZͷ࣮͔Β3FBDUͷϞʔμϧΛల։ K2VFSZΛར༻ͤͣωΠςΟϒͳ+4ͰΧελϜΠϕϯτΛఆٛͯ͠Α͍
طଘͷK2VFSZ࣮ϖʔδ w 3FBDUͷϦϓϨΠεʢϦχϡʔΞϧʣରԠத w ϦχϡʔΞϧ w K2VFSZͦͷ··ͷ6*Λ3FBDUʹஔ͖͑ΔͷͭΒ͔ͬͨɾɾɾ w 69্ɾσβΠϯ৽ಉ࣌ʹ💪
औΓΈɾΈ
σΟϨΫτϦߏ 'FBUVSFT1BUUFSO w 3FEVY͕ਪ͍ͯ͠Δύλʔϯ w ݩʑ%VDLTύλʔϯΛ࠾༻͍ͯͨ͠ w େنͳΞϓϦͩͱɺTSDԼʹΧςΰϦ ͚͞ΕͨσΟϨΫτߏϑΝΠϧؒͷҠಈ ͕ਏ͔͕ͬͨɺָʹʂ
w 'FBUVSFຖʹ͋Δఔͷࣗ༝Λ࣋ͨͤɺ ػೳνʔϜʹదͨ͠ܗͰॊೈʹӡ༻Մೳ
,BPOBWJ%FTJHO4ZTUFN ,%4 w ڞ௨3FBDUίϯϙʔωϯτͱ6*ͷҰ؏ੑΛఏڙ w छྨҎ্ͷίϯϙʔωϯτ w 'JHNBͱͷ߹ੑΛॏࢹ͠ɺσβΠφʔͱΤϯδχΞͷίϛϡχέʔγϣϯίε τݮ w
ެ։ࣾʹରͯ͠ͷΈʢύϒϦοΫʹ͍͖͍ͯͨ͠ɾɾɾʂʣ
σβΠϯγεςϜͷٕज़ w ΧΦφϏຊମͱผϦϙδτϦ w (JU-BCͷ1BDLBHF3FHJTUSZΛར༻͠ ϓϥΠϕʔτͳ/1.ύοέʔδͱͯ͠ఏڙ w 4UPSZCPPLͰཧ w 5FTUJOH
w 3&(46*5 w +FTU 3FBDU5FTUJOH-JCSBSZ
3&(46*5 4UPSZCPPL͔Β6*ࠩΛݕ
σβΠϯγεςϜߏஙͷഎܠ w ݩʑΧΦφϏຊମͷϦϙδτϦͰ"UPNJD%FTJHOʹ४ڌͨ͠ίϯϙʔωϯτ ӡ༻ͷߏ w σβΠφʔͱΤϯδχΞͷڞ௨ݴޠͱͳΔΑ͏ͳج൫ʹ αʔϏεͷಛੑ͔Βɺػೳຖʹࣗ༝ͷߴ͍σβΠϯ͕ٻΊΒΕ "UPNJD%FTJHOʹ४ڌ͢ΔͭΒΈ͕ੜ͡ɺഇࢭ ڞ௨ݴޠʹͰ͖ͳ͔ͬͨ
σβΠϯγεςϜߏஙͷഎܠ w ݱߦͷσβΠϯγεςϜͱͯ͠ϦχϡʔΞϧ w ࠷ݶͷڞ௨ίϯϙʔωϯτͷΈΛཧ͢ΔΑ͏ʹ
ϓϩμΫτͷϦϙδτϦͱ͚ͨϝϦοτ w ΞδϦςΟͷ্ w ϦϦʔεɾ$*͕Γ͞ΕΔ w ٕज़બఆͷ෯͕͕Δ ݱࡏσβΠϯγεςϜΛར༻͍ͯ͠Δͷ ຊମϦϙδτϦ͚͕ͩͩɺԸܙΛेʹ࣮ײ
$VTUPN)PPLTͱ୯ମςετ w $VTUPN)PPLTΛੵۃతʹ࡞ w ίϯϙʔωϯτͷݟ௨͕͠Α͘ͳΔ w $VTUPN)PPLT୯ҐͰϩδοΫͷ65 w SFBDUVTFͳͲ͕ࢀߟʹͳΔ w
3FBDU)PPLT5FTUJOH-JCSBSZΛར༻
3FBDU)PPLT5FTUJOH-JCSBSZ
υΩϡϝϯτ w Ұൠతͳ3FBDUʹؔ͢Δઆ໌͚ͩͰͳ͘ɺΧΦφϏͰར༻͢ΔϥΠϒϥϦͷར༻ํ๏ ͱ߹Θͤͯղઆ w ීஈόοΫΤϯυΛϝΠϯʹ͍ͬͯΔϝϯόʔΦϯϘʔσΟϯάͰల։ 3FBDU։ൃνϡʔτϦΞϧ 3FBDU։ൃΞϧςΟϚ˔Ξ w ΧΦφϏʹ͓͚Δ۩ମతͳ࣮ํ๏ɾํͳͲΛղઆ͢Δ߈ུຊతͳཱͪҐஔ
w "1*௨৴ॲཧͷ࣮ 'PSN࣮ 7BMJEBUJPO࣮ͳͲ
։ൃࢧԉπʔϧ
&4-JOU$VTUPN3VMF w σβΠϯγεςϜͱಉ༷ʹผϦϙδτϦɾϓϥ Πϕʔτͳ/1.ύοέʔδ w σβΠϯγεςϜͰఆٛ͞ΕΔΧϥʔίʔυఆ ͷར༻Λڧ੍͠ɾஔ w !UZQFTDSJQUFTMJOUFTMJOUQMVHJOΛࢀߟ w
!UZQFTDSJQUFTMJOUFYQFSJNFOUBMVUJMT w &4-JOU1MVHJO࡞࣌ͷϢʔςΟϦςΟ
ϒϥϯνࣗಈϚʔδπʔϧ w نͷେ͖ͳ։ൃͰτϐοΫϒϥϯνͱͯ͠ GFBUVSFϒϥϯνΛΔ w NBTUFSϒϥϯνͱͷࠩΛఆظతʹऔΓࠐΉඞཁ ͕͋Γɺ͜ΕΛࣗಈԽ w $*ύΠϥϓϥΠϯޭ࣌ͷΈϚʔδ w
(PPHMF͕ެ։͓ͯ͠Γɺ+BWB4DSJQUͰγΣϧ͕ॻ ͚Δ[YΛར༻ NBTUFS GFBUVSFGPP औΓࠐΈର
ͦͷଞπʔϧ w 1)1Ͱఆٛ͞Εͨ&OVNΛ5ZQF4DSJQUͷఆʹม͢Δπʔϧ w .Z42-ͷεΩʔϚ͔Β5ZQF4DSJQUͷܕΛੜ͢Δπʔϧ
ݱঢ়ͷ՝ͱࠓޙͷల
՝ w K2VFSZͷػೳ͕·ͩ·ͩ͋Δ w -BSBWFM 1)1 ʹґଘ࣮ͨ͠ w .VMUJQMFQBHF"QQMJDBUJPO
ࠓޙ w σβΠϯγεςϜ w BZվળ w && w -BSBWFMґଘ͔Βͷ٫ w
4JOHMFQBHF"QQMJDBUJPO w ϑϩϯτΤϯυΞʔΩςΫνϟ৽
ϑϩϯτΤϯυΞʔΩςΫνϟ৽ "1* "1* ґଘͷղফ Ωϟογϡઓུ
՝ଟ͍͕ ٕज़ෛ࠴ͷฦࡁΞʔΩςΫνϟ৽ ֶͼɾΓ͕͍͕͋Δʂ
5IBOLT 8FBSFIJSJOH '(()*+,,-./)01#.%#2$03),/4-/5$(,6$*(, ϑϩϯτΤϯυͷϞμφΠζ %9ɾ69ͷ࠷େԽ ҰॹʹऔΓΈ·͠ΐ͏ʂ