Slide 1

Slide 1 text

&4%PD &4࣌୅ͷυΩϡϝϯςʔγϣϯπʔϧ

Slide 2

Slide 2 text

ؙࢁ྄!IJNBSV $PPLQBE*OD

Slide 3

Slide 3 text

ॕ&$."4DSJQU BLB&4

Slide 4

Slide 4 text

&4࣌୅ͷ։ൃ؀ڥ ࢲݟ

Slide 5

Slide 5 text

&4࣌୅ͷ։ൃ؀ڥ ࢲݟ ίʔυ &4 #BCFM ςετ .PDIB QPXFSBTTFSU υΩϡϝϯτ +4%PD

Slide 6

Slide 6 text

+4%PDʹର͢Δෆຬ &4ʹະରԠ W JTTVF  ग़ྗ͞ΕΔυΩϡϝϯτ͸΋ͬͱগ͠޻෉Ͱ͖Δ &4࣌୅ʹ͸ෆཁͳλά͕ଟ͍ ίʔυϕʔε͕&4 ಺෦Ͱ/PEFKTͱ3IJOP͕ࠞࡏ͍ͯ͠Δ

Slide 7

Slide 7 text

&4࣌୅ͷ։ൃ؀ڥ ࢲݟ ίʔυ &4 #BCFM ςετ .PDIB QPXFSBTTFSU υΩϡϝϯτ +4%PD

Slide 8

Slide 8 text

&4࣌୅ͷ։ൃ؀ڥ ࢲݟ ίʔυ &4 #BCFM ςετ .PDIB QPXFSBTTFSU υΩϡϝϯτ &4%PD

Slide 9

Slide 9 text

&4%PD OQNJOTUBMMFTEPD

Slide 10

Slide 10 text

&4%PD w &4ʹରԠ w ׬શରԠʹ͸·ͩͪΐͬͱ଍Γͳ͍ w 3FBDU+49ʹ΋ରԠ

Slide 11

Slide 11 text

&4%PD

Slide 12

Slide 12 text

&4%PD

Slide 13

Slide 13 text

&4%PDͷΰʔϧ ιʔείʔυΛݟͳͯ͘΋
 ιϑτ΢ΣΞΛ࢖͏͜ͱ͕Ͱ͖Δ
 υΩϡϝϯτΛੜ੒͢Δ͜ͱ

Slide 14

Slide 14 text

&4%PDͷΰʔϧ ιʔείʔυΛݟͳͯ͘΋
 ιϑτ΢ΣΞΛ࢖͏͜ͱ͕Ͱ͖Δ
 υΩϡϝϯτΛੜ੒͢Δ͜ͱ υΩϡϝϯτͷੑ࣭Λߟ͑ͯΈͨ

Slide 15

Slide 15 text

υΩϡϝϯτͷੑ࣭ w ܧଓੑ w ࣮༻ੑ w ໢ཏੑ w ؔ࿈ੑ w ݕࡧੑ

Slide 16

Slide 16 text

υΩϡϝϯτͷੑ࣭ w ܧଓੑˠΧόϨοδ w ࣮༻ੑˠৄࡉͳ৘ใ w ໢ཏੑˠ੩తղੳΈ͍ͨͳ΋ͷ  w ؔ࿈ੑˠςετͱͷΠϯςάϨʔτ w ݕࡧੑˠݕࡧ &4%PDͰͷ࣮ݱํ๏

Slide 17

Slide 17 text

ΧόϨοδ w υΩϡϝϯτͷΧόϨοδ w શମͰԿॻ͔Ε͍ͯΔ͔ w ':*JODIDJPSH ܧଓੑ

Slide 18

Slide 18 text

ΧόϨοδ ܧଓੑ

Slide 19

Slide 19 text

ৄࡉͳ৘ใ ΫϥεҰཡ ϝιουҰཡ ϓϩύςΟҰཡ ܧঝؔ܎ ܧঝϝιου ΦʔόʔϥΠυϝιο υ Ҿ਺ ໭Γ஋ σϑΥϧτҾ਺ δΣωϦΫε %FQSFDBUFE &YQFSJNFOUBM 50%0 όʔδϣϯ ֎෦Ϋϥε FUD ࣮༻ੑ

Slide 20

Slide 20 text

੩తղੳͷΑ͏ͳ΋ͷ w λά͕ແͯ͘΋υΩϡϝϯτΛੜ੒ w &4ͷσϑΥϧτҾ਺Λ࢖ͬͯҾ਺ͷܕΛਪଌ w SFUVSOจ͔Β໭Γ஋ͷܕΛਪଌ /** * this is useful function. */ function foo(p = 123) { return `p = ${p}`; } ໢ཏੑ

Slide 21

Slide 21 text

੩తղੳͷΑ͏ͳ΋ͷ w λά͕ແͯ͘΋υΩϡϝϯτΛੜ੒ w &4ͷσϑΥϧτҾ਺Λ࢖ͬͯҾ਺ͷܕΛਪଌ w SFUVSOจ͔Β໭Γ஋ͷܕΛਪଌ ·࣮ͩݧతͳ࣮૷ͳͷͰੑ ೳ͸͓࡯͍ͩ͘͠͞ /** * this is useful function. */ function foo(p = 123) { return `p = ${p}`; } ໢ཏੑ

Slide 22

Slide 22 text

ςετͱͷΠϯςάϨʔτ w ςετ΋ॏཁͳυΩϡϝϯτ w ΫϥεϝιουͷυΩϡϝϯτ㱻ର৅ͷςετ ؔ࿈ੑ

Slide 23

Slide 23 text

ςετͱͷΠϯςάϨʔτ w ςετ΋ॏཁͳυΩϡϝϯτ w ΫϥεϝιουͷυΩϡϝϯτ㱻ର৅ͷςετ ؔ࿈ੑ

Slide 24

Slide 24 text

ςετͱͷΠϯςάϨʔτ w ςετ΋ॏཁͳυΩϡϝϯτ w ΫϥεϝιουͷυΩϡϝϯτ㱻ର৅ͷςετ ؔ࿈ੑ

Slide 25

Slide 25 text

ςετͱͷΠϯςάϨʔτ w ઃఆϑΝΠϧͰςετίʔυͷσΟϨΫτϦΛࢦఆ w ςετίʔυʹAA!UFTU\'PPCBS^AAΛهड़ /** @test {Foo} */ describe(‘Foo is useful class’, ()=>{ /** @test {Foo#bar} */ it(‘is useful method’, ()=>{ let foo = new Foo(); assert(typeof foo.bar, ‘function’); }); }); ؔ࿈ੑ

Slide 26

Slide 26 text

ςετͱͷΠϯςάϨʔτ w ઃఆϑΝΠϧͰςετίʔυͷσΟϨΫτϦΛࢦఆ w ςετίʔυʹAA!UFTU\'PPCBS^AAΛهड़ /** @test {Foo} */ describe(‘Foo is useful class’, ()=>{ /** @test {Foo#bar} */ it(‘is useful method’, ()=>{ let foo = new Foo(); assert(typeof foo.bar, ‘function’); }); }); ݱࡏ͸.PDIBͷΈͷରԠ ؔ࿈ੑ

Slide 27

Slide 27 text

ݕࡧ w Ϋϥε໊
 ϝιου໊
 ϓϩύςΟ໊
 ϑΝΠϧ໊
 ςετ໊ w ݕࡧΠϯσοΫε ݕࡧੑ

Slide 28

Slide 28 text

ͦͷଞ

Slide 29

Slide 29 text

Πϯϙʔτύε w υΩϡϝϯτͰJNQPSUͷํ๏ΛݟΕΔ

Slide 30

Slide 30 text

ΧελϚΠζ w ೚ҙͷ+4ͱ$44Λ૊ΈࠐΊΔ w ϑοΫϙΠϯτͷఏڙΛݕ౼த w λάͷύʔεޙ)5.-ͷੜ੒ޙ

Slide 31

Slide 31 text

ෆཁͳλάΛ࡟আ w +4%PDݸ w &4%PDݸ w Α͘࢖͏ͷ͸ݸఔ౓ w &4ʹͳͬͯෆཁʹͳͬͨ΋ͷ͕ଟ͍ w ओʹΫϥεؔ࿈

Slide 32

Slide 32 text

վળ͕ඞཁͳͱ͜Ζ

Slide 33

Slide 33 text

վળ͕ඞཁͳͱ͜Ζ w υΩϡϝϯτͷϏϧυ࣌ؒ w ߦ!.#1ඵ w ࣮੷͕গͳ͍ͷͰෆ۩߹͕·ͩ͋Δ w FTEPDJTTVFT w ϗεςΟϯά w SVCZEPDJOGPͱ͔HPEPDPSHΈ͍ͨͳͷཉ͍͠

Slide 34

Slide 34 text

·ͱΊ

Slide 35

Slide 35 text

·ͱΊ w &4ͷυΩϡϝϯτͳΒ&4%PDࢼͯ͠Έͯʂ w υΩϡϝϯτॻ͘ͱॻ͖खʹ΋͍͍͜ͱ͕͋Δʂ w *TTVF134UBS͓଴͍ͪͯ͠·͢ʂ 5IBOLZPVGPSDPOUSJCVUJPO

Slide 36

Slide 36 text

એ఻

Slide 37

Slide 37 text

$PEF-VODIGN (P '1(" 1)1 FUD

Slide 38

Slide 38 text

͓ΘΓ w FTEPDPSH w DPEFMVODIGN w JODIDJPSH w HJUIVCDPNKTEPDKTEPDJTTVFT