Slide 1

Slide 1 text

ߵ૥࿨࢘,B[VTIJ,POPTV େن໛ͳίʔυϕʔεͷվमͷͨΊʹ ࣗ࡞5ZQF4DSJQUπʔϧΛ࡞ΔϝϦοτ 54,BJHJαϒΠϕϯτϑϩϯτΤϯυ

Slide 2

Slide 2 text

ࣗݾ঺հ ߵ૥࿨࢘,B[VTIJ,POPTV 9!LB[VTIJLPOPTV -*/&Ϡϑʔגࣜձࣾιϑτ΢ΣΞΤϯδχΞ ʮ-*/&εΩϚχʯϑϩϯτΤϯυνʔϜͷ ΤϯδχΞϦϯάϚωʔδϟʔɾςοΫϦʔυ

Slide 3

Slide 3 text

ʮϑϩϯτΤϯυͷେن໛ͳίʔυϕʔεͷվमʯʹ͍ͭͯ࿩͠·͢ 💭ϥΠϒϥϦͷΞοϓάϨʔυɾஔ͖׵͑ 💭ϓϩμΫτͷϦχϡʔΞϧ

Slide 4

Slide 4 text

େن໛ͳίʔυϕʔεͷվमͰى͖Δ໰୊ ࣮૷ऀ ϨϏϡϫʔ ࠩ෼ͷྔ ˠ୯ௐͰࣅͨฤू͕ଓ͖ෛ୲ ௕ظؒʹΘͨΔ࡞ۀ ˠ௨ৗͷ։ൃͱͷཱ྆ͷ೉͠͞ ࠩ෼ͷྔ ˠ࣮૷࿙Εͷݟམͱ͠ ɹϨϏϡϫʔͷෛ୲

Slide 5

Slide 5 text

͜ͷ໰୊ͷղܾ͢ΔͨΊɺʮࣗ࡞5ZQF4DSJQUπʔϧʯΛ࡞Γ·ͨ͠

Slide 6

Slide 6 text

ʮࣗ࡞5ZQF4DSJQUπʔϧʯͱ͸ͳʹ͔ʁ let message = 'hello world'; const message = 'hello world'; ͋ΔҰఆͷϧʔϧͰ5ZQF4DSJQUϑΝΠϧΛฤू্͠ॻ͖͢Δ΋ͷ 🛠

Slide 7

Slide 7 text

ʮࣗ࡞5ZQF4DSJQUπʔϧʯͰ΍ͬͨ͜ͱ ର৅ 5ZQF4DSJQU3FBDUͷίʔυϕʔε ίϯϙʔωϯτϥΠϒϥϦͷϦϓϨΠε ࣮ݱͨ͜͠ͱ ϓϩδΣΫτ಺Ͱࢀর͕ͳ͘ͳͬͨίϯϙʔωϯτΛ࡟আ

Slide 8

Slide 8 text

ʮࣗ࡞5ZQF4DSJQUπʔϧʯʹΑͬͯ΋ͨΒ͞ΕͨϝϦοτ ࣮૷ऀ ϨϏϡϫʔ ୯ௐͳมߋ͕ଓ͘͜ͱʹΑΔ ϛεɾ࿙Εͷݮগ มߋͷΞϓϩʔνΛ ͍Ζ͍Ζͱࢼ͢ίετͷ௿Լ ϨϏϡʔର৅͕ʮࠩ෼ʯ͔Β ʮࠩ෼Λੜ੒͢Δࠩ෼ʯʹมԽ ˠෛ୲͕௿ݮ

Slide 9

Slide 9 text

ίʔυΛૢ࡞͢Δ΄͔ͷํ๏ͱͷൺֱ regex ̋खܰ͞ ʷෳࡶͳૢ࡞ͷ࣮૷ ̋ίʔυͷߏ଄ʹ جͮ͘มߋ ˚ϑΝΠϧ͝ͱͷ৘ใ ͔͠ར༻Ͱ͖ͳ͍ ̋υΩϡϝϯτɾࢀߟ ʹͳΔࢿྉ ̋ϓϩδΣΫτͷߏ੒ ʢࢀরؔ܎ͳͲʣʹج ͮ͘มߋ ̋ܕ৘ใͷར༻ ˚υΩϡϝϯτɾࢀߟ ʹͳΔࢿྉ

Slide 10

Slide 10 text

πʔϧΛ࡞Δ্ͰͷϙΠϯτ పఈతͳݸผ࠷దԽ ˠ൚༻తͳπʔϧΛ࡞ΒͣɺϓϩδΣΫτ಺ͷίʔυͷύλʔϯ͚ͩ໢ཏ͢Δ ͷࣗಈԽ ˠ࢒Γͷ͸%SBGU13Λݟͳ͕ΒखಈͰରԠ

Slide 11

Slide 11 text

5ZQF4DSJQUΛ࢖ͬͯίʔυΛૢ࡞ͯ͠ΈΑ͏ʂ TypeScript API ts-morph ʷυΩϡϝϯτͷෆ଍ ˚USBOTGPNFSΛ࢖͏ͱϑΥʔϚο τ͕ଛͳΘΕΔ ̋ෳࡶͳૢ࡞ 5ZQF4DSJQU"1*ͷ ϥούʔϥΠϒϥϦ ̋൚༻తͳૢ࡞Λ໢ཏ ̋υΩϡϝϯτ͕ॆ࣮ ̋ϑΥʔϚοτ͕ҡ࣋͞ΕΔ ˚ෳࡶͳૢ࡞ import ts from 'typescript';

Slide 12

Slide 12 text

͍͞͝ʹ w ʮࠩ෼࡞Γʯ͔Βʮࠩ෼Λੜ੒͢Δࠩ෼࡞Γʯ΁ͷస׵ w 044Խ w HJUIVCDPNMJOFUTSFNPWFVOVTFE

Slide 13

Slide 13 text

ʮࣗ࡞5ZQF4DSJQUπʔϧʯΛ࡞ͬͯେن໛ͳվमΛ௙Βͤ·͠ΐ͏ʂ

Slide 14

Slide 14 text

5IBOLZPV