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
JSConf jp 2021 kaonavi front-end development in...
Search
South
March 25, 2022
Programming
1
210
JSConf jp 2021 kaonavi front-end development in the monolithic service
South
March 25, 2022
Tweet
Share
More Decks by South
See All by South
TSConfig Solution Style & subpath imports to switch types on a per-file basis
maminami373
1
200
JSConf JP 2022 introduce React Query
maminami373
2
7.1k
Front-end rearchitect SPA
maminami373
0
440
単体テストゼロからテスト文化を醸成させた話 / Fostering the testing culture
maminami373
0
2.1k
Other Decks in Programming
See All in Programming
F#で自在につくる静的ブログサイト - 関数型まつり2025
pizzacat83
0
290
Go1.25からのGOMAXPROCS
kuro_kurorrr
0
200
Rails産でないDBを Railsに引っ越すHACK - Omotesando.rb #110
lnit
1
160
赤裸々に公開。 TSKaigiのオフシーズン
takezoux2
0
130
eBPFを用いたAIネットワーク監視システム論文の実装 / eBPF Japan Meetup #4
yuukit
3
750
Use Perl as Better Shell Script
karupanerura
0
690
関数型まつり2025登壇資料「関数プログラミングと再帰」
taisontsukada
2
800
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
180
CSC307 Lecture 17
javiergs
PRO
0
110
インターフェース設計のコツとツボ
togishima
2
710
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
3
220
PT AI без купюр
v0lka
0
230
Featured
See All Featured
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Balancing Empowerment & Direction
lara
1
290
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
4
130
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
We Have a Design System, Now What?
morganepeng
52
7.6k
Git: the NoSQL Database
bkeepers
PRO
430
65k
The Cost Of JavaScript in 2023
addyosmani
50
8.3k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
A better future with KSS
kneath
239
17k
BBQ
matthewcrist
89
9.7k
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ͷ࠷େԽ ҰॹʹऔΓΈ·͠ΐ͏ʂ