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
220
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
Automating Web Accessibility Testing with AI Agents
maminami373
1
1.7k
TSConfig Solution Style & subpath imports to switch types on a per-file basis
maminami373
1
250
JSConf JP 2022 introduce React Query
maminami373
2
7.2k
Front-end rearchitect SPA
maminami373
0
460
単体テストゼロからテスト文化を醸成させた話 / Fostering the testing culture
maminami373
0
2.2k
Other Decks in Programming
See All in Programming
CSC305 Lecture 12
javiergs
PRO
0
250
Making Angular Apps Smarter with Generative AI: Local and Offline-capable
christianliebel
PRO
0
100
スキーマ駆動で、Zod OpenAPI Honoによる、API開発するために、Hono Takibiというライブラリを作っている
nakita628
0
340
Register is more than clipboard
satorunooshie
1
380
AI時代に必須!状況言語化スキル / ai-context-verbalization
minodriven
2
320
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
2
410
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
120
Vue 3.6 時代のリアクティビティ最前線 〜Vapor/alien-signals の実践とパフォーマンス最適化〜
hiranuma
2
370
Temporal Knowledge Graphで作る! 時間変化するナレッジを扱うAI Agentの世界
po3rin
5
1.2k
実践Claude Code:20の失敗から学ぶAIペアプログラミング
takedatakashi
18
9.5k
モテるデスク環境
mozumasu
3
1.4k
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
120
Featured
See All Featured
Measuring & Analyzing Core Web Vitals
bluesmoon
9
650
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Become a Pro
speakerdeck
PRO
29
5.6k
The Invisible Side of Design
smashingmag
302
51k
Designing Experiences People Love
moore
142
24k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
23
1.5k
The Language of Interfaces
destraynor
162
25k
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ͷ࠷େԽ ҰॹʹऔΓΈ·͠ΐ͏ʂ