$30 off During Our Annual Pro Sale. View Details »

slsconfworkshop

堀家隆宏
November 02, 2017

 slsconfworkshop

堀家隆宏

November 02, 2017
Tweet

More Decks by 堀家隆宏

Other Decks in Programming

Transcript

  1. *OUSPEVDJOH"/FX
    &WFOU%SJWFO8PSME

    View Slide

  2. ࣗݾ঺հ
    w%JHJUBM$VCF$P-UE
    w4FSWFSMFTT'SBNFXPSL$PSF.BJOUBJOFS
    w4FSWFSMFTT'SBNFXPSL೔ຊޠϑΥʔϥϜ؅ཧऀ

    IUUQTHJUIVCDPNTFSWFSMFTTKBQBOGPSVN

    View Slide

  3. ΞδΣϯμ

    View Slide

  4. w&WFOU(BUFXBZΛಈ͔ͯ͠ݟΑ͏
    w,VCFSOFUFT্ʹࣗ࡞'BB4؀ڥΛߏங͠Α͏
    w&WFOU(BUFXBZͱ(PPHMF#JH2VFSZΛ࿈ܞ͞ΕΑ͏

    View Slide

  5. *OUSPEVDUJPO

    View Slide

  6. wίετʁ
    wεέʔϥϏϦςΟʁ
    w෇ՃՁ஋Λ࢈·ͳ͍ϝϯςφϯε͔Βͷ։์ʁ
    αʔόϨεΞʔΩςΫνϟͷ
    ϝϦοτͬͯʁ

    View Slide

  7. wͲͷΫϥ΢υαʔϏεͷ'BB4Λ࢖͏͔
    w֤Ϋϥ΢υαʔϏε͝ͱͷϝϦοτɾσϝϦοτ͸Կ͔
    ࠓͷαʔόϨεΞʔΩςΫνϟͷจ຺

    View Slide

  8. ࠓ೔͸͜ΕΒΛ
    Ұճ๨ΕΔ

    View Slide

  9. wαʔόϨεͷੈքͷதͰɺΫϥ΢υϕϯμʔʹґଘ͠ͳ͍044ͱ͍͏
    Ξϓϩʔν͕ࠓ೥͸ੈքͰٸ଎ʹ৳ͼ͖ͯͨɻ044Ͱ͋Ε͹ɺ͜ͷ
    αʔόϨεͷੈքͰԿ͔୭Ͱ΋ΛఏҊͰ͖Δ͜ͱɻ͜͏͍͏ੈք͕͢
    Ͱʹ਎ۙʹ͋Δͱ͍͏͜ͱ
    ࠓ೔ײͯ͡΋Β͍͍ͨ͜ͱ
    ϚϧνΫϥ΢υͱࣗલ'BB4ͱ͍͏ࠓ·Ͱʹͳ͍Ξϓϩʔν

    View Slide

  10. View Slide

  11. ͳͥ&WFOU(BUFXBZ͕
    ඞཁͳͷ͔ʁ

    View Slide

  12. &WFOU(BUFXBZ͕ϑΥʔΧε
    ͍ͯ͠Δ໰୊఺
    wෳ਺ͷϚΠΫϩαʔϏε ΋͘͠͸ϓϩόΠμ
    Λ૬ޓʹ௨৴ͨ͠Γ؅ཧ͢Δ
    ͨΊͷϕετͳΞϓϩʔν͕ͳ͍
    w4FSWFSMFTT'SBNFXPSLΛ࢖ͬͯ؅ཧͰ͖Δͷ͸ͭͷαʔϏε ϓϩόΠ
    μʔ
    ͷΈ

    View Slide

  13. ͜ΕΛͻͱͭͷϚΠΫϩαʔ
    Ϗεʹ·ͱΊΒΕΔʁ

    View Slide

  14. ௨ৗ͸ҙຯͷ͋Δ୯ҐʹϚΠ
    ΫϩαʔϏε͸෼ׂ͞ΕΔ
    ϚΠΫϩ
    αʔϏε
    ϚΠΫϩ
    αʔϏε
    ϚΠΫϩ
    αʔϏε

    View Slide

  15. &WFOU(BUFXBZ͕஥հ
    ϚΠΫϩ
    αʔϏε
    ϚΠΫϩ
    αʔϏε
    ϚΠΫϩ
    αʔϏε

    View Slide

  16. ΑΓৄ͍͠ྫ

    View Slide

  17. wڊେͳΠϕϯτυϦϒϯͳϓϥοτϑΥʔϜΛߏ੒͢Δ͜ͱΛՄೳ
    ʹ͢ΔͨΊ
    wطଘͷ'BB4ϓϩόΠμʔΛந৅Խͯ͠ɺશͯͷσʔλΛΠϕϯτͱ
    ͯ͠දݱ͢Δͱ͜ͰɺڊେͳΞʔΩςΫνϟͷதͰ΋Ұ؏ͨ͠σʔ
    λͷྲྀΕ͕ग़དྷΔ
    wϚϧνΫϥ΢υԼʹ͓͚Δ'BB4ͷͨΊͷந৅ԽιϦϡʔγϣϯ
    &WFOU(BUFXBZͷՁ஋

    View Slide

  18. $PODFQU

    View Slide

  19. 044
    IUUQTHJUIVCDPNTFSWFSMFTTFWFOUHBUFXBZ

    View Slide

  20. w&WFOU(BUFXBZ͸(PόΠφϦͱͯ͠ৗற͢Δ
    w&WFOU(BUFXBZ͔Βఏڙ͞ΕΔ؅ཧ༻"1*Λ௨ͯ͠GVODUJPO΍FWFOUͷ

    ొ࿥ TVCTDSJQUJPO
    Λߦ͏
    w'%,ͱ͍͏OPEFKTͷΫϥΠΞϯτϥΠϒϥϦ΋͋Δ

    IUUQTHJUIVCDPNTFSWFSMFTTGEL

    جૅ

    View Slide

  21. ΞʔΩςΫνϟ

    View Slide

  22. ϓϥοτϑΥʔϜඇґଘ
    w"84ɺ.JDSPTPGU"[VSFɺ*#.#MVNJYɺ(PPHMF$MPVE1MBUGPSN
    ؒͰϑΝϯΫγϣϯͱΠϕϯτͷڞ༗͕Մೳ

    View Slide

  23. ΠϕϯτυϦϒϯ
    w͢΂ͯͷσʔλ͸Πϕϯτͱͯ͠දݱ͞ΕΔ
    wΠϕϯτυϦϒϯͳઃܭͰγεςϜΛߏங͢Δ͜ͱ͕લఏͱͳΔ

    View Slide

  24. ϑΝετσϦόϦʔ
    wΠϕϯτΛૉૣ͘σϦόϦʔग़དྷΔ༷ʹͳΔ͜ͱ͕ϝΠϯͷΰʔϧ

    View Slide

  25. &(ͷجຊૢ࡞

    View Slide

  26. w'BB4'VODUJPOΛ&WFOU(BUFXBZʹొ࿥͢Δ
    w'VODUJPOʹ&WFOUΛొ࿥ 'VODUJPO͕&WFOUͱͯ͠ந৅Խ͞ΕΔ

    w&WFOUΛΫϥΠΞϯτ͔ΒൃՐͤ͞Δ ཪଆʹ͍Δ'VODUJPO͕࣮ߦ͞ΕΔ

    جຊతͳૢ࡞खॱ

    View Slide

  27. 'VODUJPOEJTDPWFSZ
    w'BB4'VODUJPOΛ&WFOU(BUFXBZʹొ࿥ͯ͠Ͳ͔͜ΒͰ΋ݺͼग़͠
    ͕ՄೳͱͳΔ

    View Slide

  28. 4VCTDSJQUJPO
    wొ࿥ͨ͠'VODUJPOʹFWFOUΛ௥Ճ͢Δ TVCTDSJQUJPOͷొ࿥

    -BNCEBΛFWFOUͱͯ͠ந৅Խͨ͜͠ͱʹ஫໨

    View Slide

  29. &NJU
    wొ࿥ͨ͠FWFOUΛൃՐͤ͞Δ
    ઌ΄Ͳͷ؅ཧ"1*Ͱ͸ͳ͘ɺIUUQΠϕϯτΛ࢖༻͍ͯ͠Δ͜ͱʹ஫໨

    View Slide

  30. &(ͷجຊૢ࡞Λ
    ΍ͬͯΈΑ͏
    ʢϋϯζΦϯ։࢝ʣ

    View Slide

  31. ΍Δ͜ͱ

    View Slide

  32. /PEFͷΠϯετʔϧ
    CSFXJOTUBMMOPEFCSFX
    FDIPFYQPSU1"5)1"5))0.&OPEFCSFX
    DVSSFOUCJOdCBTI@QSPpMF
    NLEJSQdOPEFCSFXTSD
    OPEFCSFXJOTUBMMCJOBSZW
    /PEF͸WܥΛ࢖༻͍ͯͩ͘͠͞ɻWܥ͸ޙͷϋϯζΦϯͰΤϥʔ͕ग़·͢

    View Slide

  33. 4FSWFSMFTT'SBNFXPSLͷ
    Πϯετʔϧ
    OQNJOTUBMMHTFSWFSMFTT

    View Slide

  34. ࡞ۀσΟϨΫτϦͷ࡞੒
    NLEJSFHXPSL
    &(͕࡞ۀσΟϨΫτϦʹΠϯετʔϧ͞ΕΔͨΊ

    View Slide

  35. &(Πϯετʔϧ
    DVSMTG-IUUQTSBXHJUIVCVTFSDPOUFOUDPN
    TFSWFSMFTTFWFOUHBUFXBZNBTUFSJOTUBMMTIcTI

    View Slide

  36. &(Πϯετʔϧ 8JOEPXT

    IUUQTHJUIVCDPNTFSWFSMFTTFWFOUHBUFXBZSFMFBTFT͔Β
    8JOEPXT༻ͷFYFΛμ΢ϯϩʔυ

    View Slide

  37. &(ىಈ
    CJOFWFOUHBUFXBZEFW

    View Slide

  38. &(ىಈ 8JOEPXT

    aFWFOUHBUFXBZFYFEFW

    View Slide

  39. 'VODUJPOొ࿥
    DVSMSFRVFTU1045a
    VSMIUUQWGVODUJPOTa
    IFBEFSDPOUFOUUZQFBQQMJDBUJPOKTPOa
    EBUB\GVODUJPO*EIFMMP QSPWJEFS\UZQF
    BXTMBNCEB BSOBSOBXTMBNCEBVT
    FBTUGVODUJPOTMTXPSLTIPQEFW
    QPTUQSPDFTT SFHJPOVTFBTU^^`

    View Slide

  40. $SFEFOUJBMͷొ࿥
    DBUdBXTDSFEFOUJBMT

    BXT@BDDFTT@LFZ@JEYYYYYY
    BXT@TFDSFU@BDDFTT@LFZYYYYYYYYYYYYYYY
    SFHJPOVTFBTU

    View Slide

  41. ొ࿥͞Εͨ'VODUJPOͷ֬ೝ
    DVSMSFRVFTU(&5VSMIUUQWGVODUJPOT

    View Slide

  42. &WFOUͷ4VCTDSJQUJPO
    DVSMSFRVFTU1045a
    VSMIUUQWTVCTDSJQUJPOTa
    IFBEFSDPOUFOUUZQFBQQMJDBUJPOKTPOa
    EBUB\GVODUJPO*EIFMMP FWFOU
    BXFTPNF&WFOU^

    View Slide

  43. 4VCTDSJQUJPOͷ֬ೝ
    DVSMSFRVFTU(&5VSMIUUQWTVCTDSJQUJPOT

    View Slide

  44. &WFOUͷ&NJU
    DVSMSFRVFTU1045a
    VSMIUUQa
    IFBEFSDPOUFOUUZQFBQQMJDBUJPOKTPOa
    IFBEFSFWFOUBXFTPNF&WFOUa
    EBUB\VTFS*E^

    View Slide

  45. ޙย෇͚
    DPOUSPMDͰ&(ͷϓϩηεͷఀࢭ

    View Slide

  46. LVCFMFTTΛ࢖͍
    l0OQSFNJTFTz'BB4Λߏங͠Α͏

    View Slide

  47. 0OQSFNJTFT'BB4ͱ͸
    wίϯςφ౳ͷ্ʹߏங͞ΕΔಠࣗͷ'BB4؀ڥ
    w"84΍"[VSF΍($1΍*#.౳ͷΫϥ΢υϕϯμʔʹϚωʔδυ͞Εͨ'BB4ͱ

    ۠ผ͢ΔͨΊʹ͜͏ಡΜͰ͍Δ

    View Slide

  48. ͳͥ0OQSFNJTFT'BB4
    wΫϥ΢υϓϩόΠμʔͷ੍ݶʹറΒΕΔ͜ͱͷແ͍'BB4؀ڥ͕࣮ݱͰ͖Δ

    ࣮ߦ࣌ؒͳͲ

    wΠϯϑϥϨϕϧͰ؀ڥͷνϡʔχϯά͕Մೳɻͦͷ൓໘ྑ͘'BB4ͷϝϦοτͱͯ͠࿩͞ΕΔ

    Πϯϑϥϝϯςφϯε͔Βͷ։์ͱ͍͏ϝϦοτ͸ࣦΘΕΔ
    w'BB4ͷੈքͷ৽͍͠બ୒ࢶ

    View Slide

  49. ࠓճ࡞Δߏ੒

    View Slide

  50. ,VCFSOFUFT
    wΫϥελԽ͞Εͨ%PDLFS؀ڥʹ͓͚ΔΦʔέετϨʔγϣϯπʔϧ
    w044ͱͯ͠։ൃ͞Ε͍ͯΔ

    View Slide

  51. ,VCFMFTT
    w,VCFSOFUFTωΠςΟϒͷαʔόʔϨεϑϨʔϜϫʔΫ
    w,VCFSOFUFTͷϦιʔεΛ׆༻ͯ͠ɺGVODUJPO୯ҐͰͷࣗಈεέʔϦϯάɺ"1*ϧʔ
    ςΟϯάɺ؂ࢹɺτϥϒϧγϡʔςΟϯάͳͲΛఏڙ͠·͢
    w)551ٴͼ1VC4VCͷϝΧχζϜΛ௨ͯ͠ɺίʔυΛ࣮ߦͰ͖Δ
    w͜Ε΋044ͱͯ͠։ൃ

    View Slide

  52. ,VCFMFTT4FSWFSMFTT1MVHJO
    w4FSWFSMFTT'SBNFXPSLͷϓϥάΠϯͱͯ͠,VCFMFTTΛ࢖͑Δ

    View Slide

  53. ࣮ࡍʹ΍ͬͯΈΑ͏

    View Slide

  54. ($1ͷίϯύωʹΞΫηε
    IUUQTDPOTPMFDMPVEHPPHMFDPN

    View Slide

  55. ϓϩδΣΫτͷ࡞੒

    View Slide

  56. ϓϩδΣΫτͷ࡞੒

    View Slide

  57. (PPHMF$POUBJOFS&OHJOFͷ༗ޮԽ
    IUUQTDPOTPMFDMPVEHPPHMFDPNLVCFSOFUFTMJTU

    View Slide

  58. ՝ۚΛ༗ޮԽ͢Δ

    View Slide

  59. LTΫϥελͷ࡞੒

    View Slide

  60. σϑΥϧτͷঢ়ଶͰ0,ɻ࡞੒ΛΫϦοΫ

    View Slide

  61. $-06%4)&--ͷىಈ

    View Slide

  62. $-06%4)&--্ʹ
    4FSWFSMFTTΛΠϯετʔϧ
    TVEPOQNJOTUBMMHTFSWFSMFTT

    View Slide

  63. ্ཱͪ͛ͨLTΛLVCFDUM͔Βૢ࡞Մೳʹ͢Δ

    View Slide

  64. ্෦ͷίϚϯυΛίϐϖͯ͠
    $-06%4)&--্Ͱ࣮ߦ

    View Slide

  65. LVCFMFTTͷQPEΛ࡞੒
    FYQPSU3&-&"4&W
    LVCFDUMDSFBUFOTLVCFMFTT
    LVCFDUMDSFBUFGIUUQTHJUIVCDPNLVCFMFTTLVCFMFTT
    SFMFBTFTEPXOMPBE3&-&"4&LVCFMFTT3&-&"4&ZBNM

    View Slide

  66. LVCFMFTTͷQPEΛ֬ೝ
    LVCFDUMHFUQPETOLVCFMFTT
    ͜͜·ͰͰ'BB4ͷ؀ڥ͸੔ͬͨ

    View Slide

  67. ,VCFMFTT4FSWFSMFTT1MVHJOͰGVODUJPOΛ
    σϓϩΠ͢Δ
    HJUDMPOFHJU!HJUIVCDPNTFSWFSMFTTTFSWFSMFTTLVCFMFTTHJU

    View Slide

  68. ,VCFMFTT4FSWFSMFTT1MVHJOͰGVODUJPOΛ
    σϓϩΠ͢Δ
    DETFSWFSMFTTLVCFMFTTFYBNQMFTHFUQZUIPOOQNJOTUBMM

    View Slide

  69. ,VCFMFTT4FSWFSMFTT1MVHJOͰGVODUJPOΛ
    σϓϩΠ͢Δ
    TFSWFSMFTTEFQMPZ

    View Slide

  70. σϓϩΠ͞ΕͨGVODUJPOͷ֬ೝ
    LVCFDUMHFUGVODUJPO

    View Slide

  71. GVODUJPOͷ࣮ߦ
    TFSWFSMFTTJOWPLFGIFMMPM

    View Slide

  72. ϩάͷ֬ೝ
    TFSWFSMFTTMPHTGIFMMP

    View Slide

  73. αʔϏεͷ࡟আ
    TFSWFSMFTTSFNPWF

    View Slide

  74. ޙย෇͚
    ίϯςφΫϥελͷ࡟আ

    View Slide

  75. &(Λܦ༝ͯ͠(PPHMF#JH2VFSZ
    ʹσʔλΛొ࿥ͯ͠ΈΑ͏

    View Slide

  76. ΍Δ͜ͱ
    ϩʔΧϧͰ&(Λىಈͤͯ͞ɺXFCͷϑϩϯτΤϯυܦ༝Ͱ&(
    ্ͷTVCTDSJQUJPOΛݺͼग़͠ɺ#JH2VFSZʹσʔλΛొ࿥͢Δ

    View Slide

  77. ΍Δ͜ͱ

    View Slide

  78. &(༻ͷαϯϓϧϦϙδτϦΛϩʔΧϧʹDMPOF
    HJUDMPOFHJU!HJUIVCDPNTFSWFSMFTT
    FWFOUHBUFXBZFYBNQMFHJU

    View Slide

  79. ηοτΞοϓ
    DEFWFOUHBUFXBZFYBNQMFHJU
    OQNJOTUBMM

    View Slide

  80. ηοτΞοϓͷ׬ྃ

    View Slide

  81. #JH2VFSZͷ४උ
    IUUQTDMPVEHPPHMFDPNCJHRVFSZRVJDLTUBSUXFCVJΑΓ
    ՝ۚٴͼ"1*Λ༗ޮԽ

    View Slide

  82. ೝূ৘ใͷ࡞੒
    IUUQTDPOTPMFDMPVEHPPHMFDPNBQJTDSFEFOUJBMT͔Β࣮ࢪ

    View Slide

  83. αʔϏεΞΧ΢ϯτΩʔͷ࡞੒

    View Slide

  84. DSFEFOUJBMͷμ΢ϯϩʔυ

    View Slide

  85. DSFEFOUJBMͷઃஔ
    μ΢ϯϩʔυͨ͠ೝূ৘ใΛDSFEFOUJBMTKTPOʹϦωʔϜɺ
    FWFOUHBUFXBZFYBNQMFTFSWJDFTBOBMZUJDT഑Լʹઃஔ͢Δ

    View Slide

  86. ઀ଓ৘ใͷฤू
    FWFOUHBUFXBZFYBNQMFTFSWJDFTBOBMZUJDT
    DPOpHKTPOΛ։͖ɺ130+&$5@*%Λࣗ෼ͷ΋ͷʹฤू

    View Slide

  87. 130+&$5@*%͸μογϡϘʔυ͔Β
    ֬ೝͰ͖·͢

    View Slide

  88. ςʔϒϧͷ࡞੒
    DEFWFOUHBUFXBZFYBNQMFTFSWJDFTBOBMZUJDTOPEF
    TFUVQKT

    View Slide

  89. IUUQTCJHRVFSZDMPVEHPPHMFDPN͔Β
    UFTU@FWFOUTςʔϒϧ͕ग़དྷ͍ͯΔ͜ͱΛ֬ೝ͢Δ
    ςʔϒϧ͕࡞੒͞Ε͍ͯΔ͜ͱΛ֬ೝ

    View Slide

  90. ςʔϒϧ͕࡞੒͞Ε͍ͯΔ͜ͱΛ֬ೝ
    IUUQTCJHRVFSZDMPVEHPPHMFDPN͔Β
    UFTU@FWFOUTςʔϒϧ͕ग़དྷ͍ͯΔ͜ͱΛ֬ೝ͢Δ

    View Slide

  91. &(ͷ্ཱͪ͛
    4FSWFSMFTT1MBUGPSNʹϩάΠϯ
    TMTMPHJO

    View Slide

  92. &(ͷ্ཱͪ͛
    4FSWFSMFTT'SBNFXPSLʹಉࠝ͞ΕͯΔFNVMBUPSΛ࢖༻͠·͢
    DEFWFOUHBUFXBZFYBNQMFTFSWJDFTBOBMZUJDTTMTSVO

    View Slide

  93. IUUQΠϕϯτͷTVCTDSJQUJPO
    DVSMSFRVFTU1045VSMIUUQMPDBMIPTUW
    TVCTDSJQUJPOTIFBEFSDPOUFOUUZQFBQQMJDBUJPOKTPO
    EBUB\
    GVODUJPO*EBOBMZUJDTBOBMZUJDT
    FWFOUIUUQ
    NFUIPE1045
    QBUIVTFST
    ^

    View Slide

  94. IUUQΠϕϯτͷTVCTDSJQUJPO
    DVSM9(&5IUUQMPDBMIPTUW
    TVCTDSJQUJPOTcKR

    View Slide

  95. XFCϑϩϯτը໘ͷ্ཱͪ͛
    DEFWFOUHBUFXBZFYBNQMFGSPOUFOE
    OQNTUBSU
    IUUQMPDBMIPTUʹϒϥ΢βͰΞΫηε

    View Slide

  96. XFCϑϩϯτը໘ͷ্ཱͪ͛
    ϝʔϧΞυϨεΛೖྗͯ͠SFHJTUFSΛΫϦοΫ

    View Slide

  97. ಈ࡞֬ೝ
    TMTSVOԼλʔϛφϧ্Ͱϩά͕ग़͍ͯΔ͸ͣ

    View Slide

  98. ಈ࡞֬ೝ
    #JH2VFSZͷίϯύωʹҠಈ

    View Slide

  99. ಈ࡞֬ೝ
    4&-&$5
    FWFOU
    SFDFJWFE"U
    +40/@&953"$5 EBUB FNBJM
    "4FNBJM
    EBUB
    '30.
    <ZPVSQSPKFDUJEFNJU@EFNPUFTU@FWFOUT>
    03%&3#:SFDFJWFE"U%&4$
    -*.*5
    3VO2VFSZΑΓ্هͷ42-Λྲྀ͢

    View Slide

  100. ޙย෇͚
    wTMTMPHPVUͰQMBUGPSN͔ΒϩάΞ΢τ
    wςʔϒϧͷ࡟আ

    View Slide