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
JSからTSへ移行した Vue.jsプロダクトの型チェックを 漸進的に強化する/ reinfo...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ryo
October 16, 2022
Programming
3.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
JSからTSへ移行した Vue.jsプロダクトの型チェックを 漸進的に強化する/ reinforcing the type
Vue Fes Japan 2022
ryo
October 16, 2022
More Decks by ryo
See All by ryo
Bridging Social Graphs
kawamataryo
0
360
Raycast AI APIを使ってちょっと便利なAI拡張機能を作ってみた
kawamataryo
1
600
退屈なことはDevinにやらせよう〜〜Devin APIを使ったVisual Regression Testの自動追加〜
kawamataryo
5
2.3k
SaaS公式MCPサーバーをリリースして得た学び
kawamataryo
7
2.2k
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
1
920
ts-morphのパフォーマンス改善Tips
kawamataryo
0
150
webpack to Rspack
kawamataryo
0
140
GitHub Actions と Datadog でコードベースの定点観測
kawamataryo
7
2.1k
個人開発駆動学習 / personal development driven learning
kawamataryo
1
320
Other Decks in Programming
See All in Programming
20260914 AIエージェント時代のPlatform Engineering LLM基盤とプロダクトの責務境界線
kanfab1
7
2.2k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
230
The Good Stuff, Not the Slop: Engineering High-Quality Android Apps with Modern AI Tooling
danybony
1
260
FreeBSDでZabbixを動かす
kenkino
0
310
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
250
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
500
WebMCP Challenge に星空観察アプリで参加した話
okajun35
0
190
MVNOの申込からeSIM開通までをiOSアプリでつなぐ- 本人確認・MNP・通信事業者基盤をまたぐ実装
satotakeshi
0
450
WebAssembly in Android Apps 〜 WASMはJNIの夢を見るか
keiji
1
110
Are APIs Still Relevant in the AI Era?
soyuka
0
290
AI活用は、個人から組織へ|マルチプレイヤーエージェントハーネス「QM」の社内活用事例 / AI use is moving from individuals to orgs
rkaga
1
140
Intent as Code
shoppingjaws
6
1.1k
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
500
How People are Using Generative and Agentic AI to Supercharge Their Products, Projects, Services and Value Streams Today
helenjbeal
1
330
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
520
Building an army of robots
kneath
307
46k
What does AI have to do with Human Rights?
axbom
PRO
1
2.4k
The World Runs on Bad Software
bkeepers
PRO
72
12k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
500
Technical Leadership for Architectural Decision Making
baasie
3
580
Done Done
chrislema
186
17k
Six Lessons from altMBA
skipperchong
29
4.5k
Speed Design
sergeychernyshev
33
2.1k
So, you think you're a good person
axbom
PRO
2
2.2k
Transcript
+4͔Β54Ҡߦͨ͠ 7VFKTϓϩμΫτͷܕνΣοΫΛ ਐతʹڧԽ͢Δ 7VF'FT+BQBO
!,BXBNBUB3ZP 👨💻&OHJOFFS!-"13"4JOD 🔥ݩফ࢜ ❤5ZQF4DSJQU 7VF %FOP 3FBDU 🏄ݒਨ ݸਓ։ൃ
ࠓ͢͜ͱ💬
w 7VFKTͷ54ରԠͷྺ࢙ w 54Խ͕ෆશͳ7VFKTϓϩμΫτͷ ܕνΣοΫΛͲͷΑ͏ʹڧԽ͍ͯͬͨ͠ͷ͔
7VFKTͷ54ରԠͷྺ࢙
7VFKT54ରԠͷྺ࢙
7VFKTͷϩʔϯν &WBO:PVࢯʹΑͬͯ 7VFKT͕ެ։
7VF54ͷొ ܕఆٛϑΝΠϧͷఏڙͱɺ 7VFKTͷ"1*Λϥοϓͯ͠ 54͔Β͑ΔΑ͏ʹͨ͠ϓϩδΣΫτ ͕ੜ
7VFKTͷ54ରԠͷ*TTVF 7VFKTຊମͷ54Խɺ54ରԠʹ͍ͭͯͷ แׅతͳ*TTVF͕ߘ͞Εͨɻ ۙ͘ίϝϯτ͕ଓ͖ɺ 7VFKTͷϦϦʔε࣌ʹΫϩʔζ
7VF$MBTT$PNQPOFOUͷੜ 54ͷΫϥεελΠϧͱɺ σίϨʔλΛ͍7VFίϯϙʔωϯτΛ هड़Ͱ͖Δ7VF$MBTT$PNQPOFOU͕ ੜ
54ڥͷେ෯վળ 7VFͷϦϦʔεʹͯ σίϨʔλͳ͠ͷૉͷ7VFͰ UIJTͷܕਪ͕ޮ͘Α͏ʹ
$PNQPTJUJPO"1*ͷϦϦʔε 7VFͷ3'$ΑΓެ։ɻ 7VFFYUFOEͰඞཁͩͬͨ ܕΞϊςʔγϣϯ͕ෆཁͰ ΑΓ54͕ॻ͖͘͢
7VFͷϦϦʔε ෦ϩδοΫ54Ͱॻ͖͑ ΑΓܕ҆શͳ"1*ఏڙ
7VFKTͷ54ରԠͦͷଞͷτϐοΫ🐙 ɾ 5FNQMBUFͰͷܕਪ ➜WVFUTDͰͷܕνΣοΫɺ7PMBSͰͷΤσΟλαϙʔτ ɾ5FNQMBUFͰͷ0QUJPOBM$IBJOJH OVMMJTIDPMFTDSJOH ➜7VFͰαϙʔτ ɾ 4UPSFʢ7VFYʣͷܕαϙʔτ ➜7VFYͰͷରԠɺܕ҆શͳ1JOJB
7VFKTͷ54ରԠͦͷଞͷτϐοΫ🐙 ɾ 5FNQMBUFͰͷܕਪ ➜WVFUTDͰͷܕνΣοΫɺ7PMBSͰͷΤσΟλαϙʔτ ɾ5FNQMBUFͰͷ0QUJPOBM$IBJOJH OVMMJTIDPMFTDSJOH ➜7VFͰαϙʔτ ɾ 4UPSFʢ7VFYʣͷܕαϙʔτ ➜7VFYͰͷରԠɺܕ҆શͳ1JOJB
7VFKTͷ54ରԠͦͷଞͷτϐοΫ🐙 ɾ 5FNQMBUFͰͷܕਪ ➜WVFUTDͰͷܕνΣοΫɺ7PMBSͰͷΤσΟλαϙʔτ ɾ5FNQMBUFͰͷ0QUJPOBM$IBJOJH OVMMJTIDPMFTDSJOH ➜7VFͰαϙʔτ ɾ 4UPSFʢ7VFYʣͷܕαϙʔτ ➜7VFYͰͷରԠɺܕ҆શͳ1JOJB
7VFKTͷ54ରԠͦͷଞͷτϐοΫ🐙 ɾ 5FNQMBUFͰͷܕਪ ➜WVFUTDͰͷܕνΣοΫɺ7PMBSͰͷΤσΟλαϙʔτ ɾ5FNQMBUFͰͷ0QUJPOBM$IBJOJH OVMMJTIDPMFTDSJOH ➜7VFͰαϙʔτ ɾ 4UPSFʢ7VFYʣͷܕαϙʔτ ➜7VFYͰͷରԠɺܕ҆શͳ1JOJB
ࠓ͏7VFKTͷ54ରԠॆ࣮͍ͯ͠Δ
54Խ͕ෆશͳ7VFKTϓϩμΫτͷ ܕνΣοΫΛڧԽ͢Δ
ͲΜͳϓϩμΫτʁ📦
ߏ%KBOHPʷ7VFKTʢܥʣ ॳظίϛοτɿ 54ಋೖ࣌ظɿ ؔ࿈ϑΝΠϧɿ7VFKT4'$ 54˞ ˞ͭͷϓϩμΫτͷ߹ܭ
54Խ͕ෆશͱʁ🤔
w AMBOHlUTzAͱ͍ͯ͠ͳ͍7VF4'$ϑΝΠϧ͕ଟ͋Δ w ATUSJDUUSVFAͰͳ͘؇͍ܕνΣοΫͱͳ͍ͬͯΔ w $*ͰܕνΣοΫ͕࣮ߦ͞Ε͍ͯͳ͍ w ܕΤϥʔ͕์ஔ͞ΕҰ෦ϑΝΠϧͰΤσΟλ͕ਅͬ w TUSJDUUSVFͱ͢ΔͱܕΤϥʔ૯ʢ
ʣ
˞&SSPS-FOTΛ͍ͬͯΔͷͰ&SSPS͕ڧௐ͞Εͯ·͢ ˞͜͜·Ͱ͍ͷۃʑҰ෦Ͱ͢ ࣌ͷΤσΟλ
ͳͥܕνΣοΫΛڧԽ͍ͨ͠ͷʁ🛡
ɾ ࣮ߦ࣌Τϥʔͷճආ ɾ ܕਪɾΦʔτίϯϓϦʔτʹΑΔ։ൃମݧͷ্ ɾ อकੑͷ্ʢػೳվमɺϦϑΝΫλͰͷσάϨճආʣ ɾ 7VFόʔδϣϯΞοϓͷੴ ɾ ਅͬͳΤσΟλΛͳΜͱ͔͍ͨ͠
ϓϩδΣΫτ֓ཁ🔧
ϓϩδΣΫτ໊ɿਅͷ5ZQF4DSJQUԽ Ϧιʔεɿ໊ Ћ ظؒɿ݄ʙݱࡏ ॳظ!ZVJDILVOͦͷޙ!.BTB4IJO ʹ͢͢ΊͯΒ͍ɺࣗํܾఆɾαϙʔτͷΈ
ͲͷΑ͏ʹਐΊͨʁ🛣
%FTJHO%PDͷ࡞
ͳͥɺԿͷͨΊʹɺͲͷΑ͏ʹ։ൃΛ͢͢ΊΔ͔Λه ͨ͠υΩϡϝϯτɻ എܠɺઃܭɺτϨʔυΦϑɺϦεΫͳͲʹ͍ͭͯ· ͱΊ্ͨͰɺϝϯόʔؒͰϨϏϡʔ͢Δɻ %FTJHO%PDͱʁ
ɾ ඞཁͳ͚Εແཧʹ$PNQPTJUJPO"1*ʢTFUVQʣʹॻ͖͞ͳ͍ ɾ 54➜7VFKT4'$4DSJQU෦➜UFNQMBUF෦ͷॱͰॱ࣍ܕΤ ϥʔΛमਖ਼͢Δ ɾ ৽نʹܕΤϥʔ͕ࠞೖ͢ΔͷΛ͙ͨΊɺ·ͣ$*ͰͷܕνΣοΫ Λಋೖ͢Δ ࣮ࡍʹఆΊ੍ͨ
54ԽͷδϨϯϚΛղফ͢Δ
$*ͰܕνΣοΫΛ࣮ߦͯ͠ɺ ৽نίʔυʹܕΤϥʔ͕ ࠞೖ͢Δ͜ͱ͍͗ͨ طଘͷίʔυʹܕΤϥʔ͕ଟ ͗ͯ͢ɺڧ͍ܕνΣοΫͷઃ ఆͰ$*Λ௨͢͜ͱ͕Ͱ͖ͳ͍ 74 54ԽͷδϨϯϚ😵💫
طଘͷܕΤϥʔશͯʹ!UTFYQFDUFSSPSΛ͚ͭͯ ܕΤϥʔΛճආ্ͨ͠Ͱɺ$*ʹܕνΣοΫΛՃ͢Δ ˞ !UTFYQFDUFSSPS࣍ߦͷܕΤϥʔΛ੍͢Δίϝϯτɻ࣍͠ߦʹ ܕΤϥʔ͕ͳ͘ͳͬͨ߹ɺ!UTFYQFDUFSSPSࣗମ͕ΤϥʔʹͳΔ ղফํ๏💊
ͰΤϥʔ͕͋Γ͗ͯ͢େม🥲
πʔϧΛ࡞Ζ͏🦾
5ZQF4DSJQU$PNQJMFS"1*Λ͍ 54ͷܕΤϥʔൃੜՕॴʹɺ !UTFYQFDUFSSPSͷίϝϯτΛҰׅૠೖ ܕΤϥʔΛແޮԽ͢Δ$-*πʔϧɻ 7VFKT4'$ͷTDSJQU෦ʹରԠ LBXBNBUBSZP TVQQSFTTUTFSSPST
54 549ͳͲจ຺ΛΈͯదͳίϝϯτ͕ૠೖ͞ΕΔ
TVQQSFTTUTFSSPSΛ࣮ߦͨ͠13 54Λ➜ʹΞοϓσʔτ ͞ΒʹTUSJDUUSVFʹ্ͨ͠Ͱɺ !UTFYQFDUFSSPSΛՃ
ˏUTFYQFDUFSSPSΛॱ࣍͢
54ԽͷδϨϯϚΛղফ͠ɺ $*ͰܕνΣοΫΛ௨͢͜ͱ͕ग़དྷͨͷͰɺ ৽نίʔυʹܕΤϥʔ͕ࠞೖ͢Δ͜ͱ͛Δ طଘͷܕΤϥʔΛ͢͜ͱʹूதͰ͖Δ
54ͷΤϥʔछผ͝ͱʹɺ ͻͨ͢ΒܕΤϥʔΛղফ͍ͯ͘͠
ˏUTFYQFDUFSSPSͷՃ $*ͷܕνΣοΫڧԽ !UTFYQFDUFSSPSͷॱ࣍আ 54ϑΝΠϧɺ7VFKT4'$ͷ4DSJQU෦ͷॱͰ ࣮ߦ͍ͯ͘͠ɻ
ͦͷଞϙΠϯτ💡
੩తΞηοτͷࠩൺֱͰϨϏϡʔෛՙΛܰݮ
(JU)VC"DUJPOTͰ13͝ͱʹ੩తΞηοτͷ Ϗϧυ݁ՌΛ.BTUFSϒϥϯνͱൺֱɻ Ϗϧυ݁Ռʹࠩग़ͳ͍ ➜ϓϩμΫτͷಈ࡞ʹมԽͳ͍ͳͷͰɺ EJ ff ͕ଟͯ҆͘৺ײΛ࣋ͬͯϚʔδग़དྷΔ ˞7VFKT4'$ͷ߹ɺܕͷมߋͷΈͰ͕ࠩ ग़ͨͷͰɺ͋͘·Ͱ54ϑΝΠϧݶఆ
ϦϑΝΫλπʔϧͷར༻ɾ։ൃͰޮԽ
NJZBPLB WVFDPNQPTJUJPODPOWFSUFS 0QUJPOT"1*Λ$PNQPTJUJPO"1*ʹ ࣗಈม͢Δπʔϧɻ 4FUVQʹॻ͖͑ͳ͚ΕɺΒͳ͍ܕΤϥʔΛ ࣋ͭίϯϙʔωϯτͷมͰར༻
7VFFYUFOEͨͩͷPCKFDUΛ͍ͬͯΔMBOHlUTzͷ 7VFKT4'$ϑΝΠϧΛɺEF fi OF$PNQPOFOU ʜ ʹม͢Δ πʔϧɻ 7PMBS͕7VFFYUFOEͰదͳܕਪΛͯ͘͠Εͳ͍ Λղܾ͢ΔͨΊʹେ׆༂ɻ .BTB4IJO
EF fi OFDPNQPOFOUDPOWFSUFS
7VFKT4'$ͷTDSJQU෦ͷΈΛܕνΣοΫ͢Δ$-*πʔϧɻ 5FNQMBUF෦ͷܕΤϥʔ͕ଟ͗ͯ͢WVFUTDΛ$*Ͱ࣮ߦ͢ Δ͜ͱग़དྷͳ͍͕ɺTVQQSFTTUTFSSPSTͰ!UTFYQFDU FSSPSΛ༩Ͱ͖ΔTDSJQU෦ͷΈܕνΣοΫ͍ͨ͠ͱ͍ ͏ࢥ͍͔Β։ൃɻ LBXBNBUBSZP WVFTDSJQUUZQFDIFDL
ෛ࠴ղফμογϡϘʔυͰਐḿঢ়گΛՄࢹԽ
(JU)VC"DUJPOTͱ[Yɺ%BUBEPHΛͬͯɺ ࡞ͬͨϑϩϯτΤϯυͷίʔυϕʔεͷঢ়گ ΛՄࢹԽ͢ΔμογϡϘʔυ 7VF4'$ͷ54Խ 54&SSPSͷʢUTFYFDUFSSPSΛؚΉʣ ΧόϨοδ ͳͲͳͲΛ࣌Ͱܭଌ͍ͯ͠Δɻ ˞μϛʔͰ͢
݁Ռ🏍
🔴#FGPSF 🟢"GUFS 5ZQF4DSJQUͷόʔδϣϯ ܥ ܥ $*ͰͷܕνΣοΫ 54ͷΈ 54 7VF4'$˞ 4USJDU
'"-4& 536& ܕΤϥʔ UFNQMBUF෦ Ҏ֎΄΅ͳ͠˞
·ͱΊ🏁
ɾ ࠓͷ7VFKTͰ5ZQF4DSJQUͷԸܙΛॆड͚ΒΕΔ ɾ 54ԽΛॱ࣍͢͢ΊΔʹ!UTFYQFDUFSSPS͕͓͢͢Ίɹ ʢTVQQSFTTUTFSSPSTͬͯͶʣ ɾ ෛ࠴ղফϓϩδΣΫτ࣍ୈͰޮԽ͕Մೳ 7VFڥͰͷ7PMPSͷରԠͳͲͰҰ෦ϋϚΔͱ͜Ζ͋ͬͨ ͕ɺܕΤϥʔղফࣗମ٧·Δͱ͜Ζ͋·Γͳ͍ɻ πʔϧ͕͋Δ͜ͱͰ։ൃޮVQʹܨ͕ͬͨɻ
&OE