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
TypeScriptのASTをチラ見してみる
Search
kawokas
November 29, 2018
Programming
1
190
TypeScriptのASTをチラ見してみる
kawokas
November 29, 2018
Tweet
Share
Other Decks in Programming
See All in Programming
ts-morphを使ってコードリプレイスとASTへのハードルを下げる!
nyawach
5
330
Amazon Aurora Serverless v2が意外と高かった話と、AWS Database Migration Serviceの話
satoshi256kbyte
1
110
CREってこういうこと? 体験入社 - 提案資料 - / what-is-cre-trial-employment
shinden
1
620
TypeScriptとGraphQLで実現する 型安全なAPI実装 / TSKaigi 2024
hokaccha
5
2.8k
The grand strategy of Ruby Parser
yui_knk
5
310
Docker_OSS_ホスティング入門
satokoki645
0
140
ペパボOpenTelemetry革命
pyama86
2
1.1k
TypeScriptのパフォーマンス改善
yajihum
14
5.1k
Implementing Design Systems in Swift
seyfoyun
2
530
2024 コーディング研修
ckazu
2
660
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
130
Good first issues of TypeProf
mame
4
610
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
188
16k
Code Review Best Practice
trishagee
56
15k
Music & Morning Musume
bryan
41
5.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
Rebuilding a faster, lazier Slack
samanthasiow
74
8.3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Debugging Ruby Performance
tmm1
70
11k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
84
45k
Producing Creativity
orderedlist
PRO
338
39k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
Statistics for Hackers
jakevdp
790
220k
Transcript
5ZQF4DSJQU ͷ "45Λνϥݟͯ͠ΈΔ ՏԬ৳ޗ 5ZQF4DSJQU ͷ "45Λνϥݟͯ͠ΈΔ ՏԬ৳ޗ
ՏԬ৳ޗ ϑϩϯτΤϯδχΞ ! δϥϑ L B X P L B
T L B X P L B T
3FBDU 7VF ͰΞϓϦΛ࡞Δͱ͖
"1* ͳͲͰͳʹ͔ͷσʔλऔಘͨ͠Γɺ $PNQPOFOU ʹ 1SPQT Λೖͨ͠Γ ͠·͢ΑͶ
N P D L σ ʔ λ ͍ ͍ ײ
͡ ʹ Ͱ ͖ ͳ ͍ ͔ ͳ - J L F ' B D U P S Z # P U ( S B Q I 2 - 5 P P M T ς ε τ σ ʔ λ ͭ ͘ Δ ͷ Ί Μ Ͳ ͍ 5 Z Q F 4 D S J Q U ܕ ͋ Δ ͔ Β ಈ త ʹ ੜ Ͱ ͖ Δ ؾ ͕ ͢ Δ
5 Z Q F 4 D S J Q U
ͷ ܕ ใ ͔ Β Ϟ ο Ϋ σ ʔ λ Λ ࣗ ಈ ੜ ͢ Δ π ʔ ϧ Λ ࡞ ͬ ͯ Έ · ͠ ͨ IUUQTHJUIVCDPNLBXPLBUPNPDL
D E M O
! U Z Q F T I P H
F E U T ʹ ܕ Λ ఆ ٛ ί Ϛ ϯ υ Λ ࣮ ߦ ͢ Δ N P D L σ ʔ λ Λ ฦ ͢ ؔ ͕ ࣗ ಈ Ͱ ఆ ٛ ͞ Ε · ͢
! U Z Q F T V T F
S E U T ʹ ܕ Λ ఆ ٛ ί Ϛ ϯ υ Λ ࣮ ߦ ͢ Δ
N P D L σ ʔ λ Λ ฦ ͢
ؔ ͕ ࣗ ಈ Ͱ ఆ ٛ ͞ Ε · ͢ ࣮ ߦ ͢ Δ ͱ ͦ Ε ͬ Ά ͍ σ ʔ λ ͕ ฦ ͬ ͯ ͖ · ͢
5ZQF4DSJQU$PNQJMFS"1* Ͱ ؆ ୯ ʹ ࣮ Ͱ ͖ ·
͢ ʂ
5ZQF4DSJQU$PNQJMFS"1* IUUQTHJUIVCDPN.JDSPTPGU5ZQF4DSJQUXJLJ6TJOHUIF$PNQJMFS"1* 4PVSDF'JMF 5ZQF4DSJQU$PNQJMFS"1* )FMMP"45/PEF ιʔείʔυΛ DSFBUF1SPHSBN ʹ͠·͢ "45 ͕औಘͰ͖·͢
"45ͬͯʁ நߏจʢӳ BCTUSBDUTZOUBYUSFF ϓϩάϥϜͷߏΛߏͰදͨ͠ͷ ϓϩάϥϛϯάݴޠͱλʔήοτݴޠͷதؒσʔλͰ͢ IUUQTBTUFYQMPSFSOFU #BCFM ͷ "45 ͜͜Ͱ͍Ζ͍Ζࢼͤ·͢
5ZQF4DSJQU ͷ "45%BUB4USVDUVSFT /PEF IUUQTHJUIVCDPN.JDSPTPGU5ZQF4DSJQUXJLJ"SDIJUFDUVSBM0WFSWJFX S y m b o
l S y m b o l N o d e N o d e N o d e N o d e N o d e P r o g r a m S o u r c e F i l e S o u r c e F i l e 1SPHSBN 4PVSDF'JMF 4ZNCPM 5ZQF
5ZQF4DSJQU ͷ "45%BUB4USVDUVSFT IUUQTHJUIVCDPN.JDSPTPGU5ZQF4DSJQUXJLJ"SDIJUFDUVSBM0WFSWJFX S y m b o l
S y m b o l N o d e N o d e N o d e N o d e N o d e P r o g r a m S o u r c e F i l e S o u r c e F i l e
5ZQF4DSJQU ͷ "45/PEF IUUQTHJUIVCDPN.JDSPTPGU5ZQF4DSJQUCMPCNBTUFSMJCUZQFTDSJQUEUT ίί LJOE ʹΑͬͯॲཧΛ͔͍͖͑ͯ·͢
ɹ4ZNCPMHFU%PDVNFOUBUJPO$PNNFOU +4%PD ܗࣜͷίϝϯτΛऔಘ͢Δ 4JHOBUVSF ͔ΒऔಘͰ͖·͢
+4%PD ܗࣜͷίϝϯτΛऔಘ͢Δ D B T V B M ͳ Ͳ
Ͱ G B L F σ ʔ λ Λ ੜ ͢ Δ ͜ ͱ Ͱ ͖ ͦ ͏
͋ͱී௨ʹ /PEFKT ͷίʔυΛ ΨϦΨϦॻ͍͍͚ͯͩ͘Ͱ͢ʂ IUUQTHJUIVCDPNLBXPLBTUPNPDL ࠓճ ߦͪΐͬͱ͘Β͍ͷίʔυྔͰͨ͠
(FOFSBUPS ͷ࡞ -JOU ͷϧʔϧՃ IUUQTHJUIVCDPNLBXPLBTUPNPDL ͳͲͳͲ։ൃʹ͓͚Δ໘ͳ࡞ۀΛࣗಈԽͰ͖Δ ศརͳπʔϧ͕ͨ͘͞Μ࡞ΕΔͷͰɺΦεεϝͰ͢ʂ 5ZQF4DSJQU"45 ͱ $PNQJMFS"1*
Λ͏ͱ
͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ IUUQTHJUIVCDPNLBXPLBTUPNPDL L B X B P @ L B
X P L B