Upgrade to Pro — share decks privately, control downloads, hide ads and more …

設計ナイト2022 トランザクションスクリプト

設計ナイト2022 トランザクションスクリプト

Shinpei Maruyama

June 14, 2022
Tweet

More Decks by Shinpei Maruyama

Other Decks in Programming

Transcript

  1. !TIJOQFJ
    ʮ%%%ͱ͔ΫϦʔϯΞʔΩςΫνϟͱ͔ϚΠΫϩαʔ
    Ϗεͱ͔Ͳ͏Ͱ΋͍͍͔Βͱʹ͔͘ϩάݟͯTFOUSZݟ
    ͯEBUBEPHݟͯཉ͍͠ʯ !POJHSB@
    ɹΛ੒ཱͤ͞Δ
    !ઃܭφΠτʮτϥϯβΫγϣϯεΫϦϓτʯ

    View full-size slide

  2. IUUQTUXJUUFSDPNPOJHSB@TUBUVT
    ಉ྅ͷπΠʔτ

    View full-size slide

  3. ࣗݾ঺հ
    w ຊۀ͸ࣗশϛϡʔδγϟϯͷ୅ޙ൒உੑ
    w ϑϧλΠϜͷ෭ۀͰ$MBTTJͱ͍͏ձࣾͷ71P5
    w 4DBMB޷͖
    w σʔλϞσϦϯά΋޷͖
    w υϝΠϯϞσϦϯά΋޷͖

    View full-size slide

  4. IUUQTUXJUUFSDPNPOJHSB@TUBUVT

    View full-size slide

  5. Θ͔Δ
    ઃܭτʔΫ͹͔ͬΓ΍ͬͯͳ͍Ͱ
    γεςϜΛӡ༻͠Ζ
    ʢઃܭφΠτͱ͸ͳΜͩͬͨͷ͔ʣ

    View full-size slide

  6. 2
    Ͳ͏Ͱ΋͍͍ͬͯͨ͋͜ͳ͍ͩΖ

    View full-size slide

  7. "
    ͦΕ͸ͦ͏͕ͩ
    ʮͲ͏Ͱ΋͍͍ʯ
    ͬͯݴ͑Δ৚͕݅͋Δ

    View full-size slide

  8. 2
    ͡Ό͋৚݅Λຬͨͨ͠Β
    τϥϯβΫγϣϯεΫϦϓτͰ΋͑͑Μ͔ʁ

    View full-size slide

  9. "
    ͑͑
    ͦͷ৚݅ͱ͸ʁ

    View full-size slide

  10. 5Y4DSJQU74%PNBJO.PEFMʁ
    w 5Y4DSJQUͱ%PNBJO.PEFM͸Α͘ೋ߲ରཱͱͯ͠ѻΘΕΔɻ
    w ͜͜Ͱݴ͏%PNBJO.PEFMͬͯͷ͸͍ΘΏΔ%%%จ຺ͷ΍ͭͰ
    w %#͔Βಠཱͯͯ͠
    w ϏδωεϩδοΫʢʁʣΛ00Ͱʢʁʣදݱͨ͠΋ͷ
    w ͔͠͠ຊ౰ʹ͜ΕΒ͸ೋ߲ରཱ͔ʁ5Y4DSJQU͸ѱͳͷ͔ʁ
    w ࠓ೔͸͜ͷ΁Μͬ͘͡Γߟ͍͑ͨ
    w ·ͣ͸ͦΕͧΕͷಛ௃Λ͓͞Β͍

    View full-size slide

  11. 5Y4DSJQU74%PNBJO.PEFMʁ
    w 5Y4DSJQU
    w Ϣʔβʔ͔ΒͷΞΫγϣϯͱରԠͨ͠ϩδοΫ
    w %#ΞΫηε΋ϏδωεϩδοΫʢʁʣ΋όϦσʔγϣϯʢʁʣ΋શ෦΍Δ
    w ΋͏શ෦͍͋ͭҰਓͰ͍͍Μ͡Όͳ͍͔ͳ

    View full-size slide

  12. 5Y4DSJQU74%PNBJO.PEFMʁ
    w %PNBJO.PEFM
    w ϢʔβʔͷΞΫγϣϯͱରԠͰ͸ͳ͍
    w %#ΞΫηε͠ͳ͍
    w όϦσʔγϣϯʢʁʣ͠ͳ͍
    w "MXBZT7BMJE%PNBJO.PEFMͬͯ΍ͭ΍Ͷ
    w ͱ͸͍͑ʮಥ͖߹ΘͤΤϥʔʯͬͯ΍ͭ͸"MXBZT7BMJEʹ͸Ͱ͖ΜͷΑ
    w ࠓճ͸͜ͷ࿩͸είʔϓʹೖΕͳ͍

    View full-size slide

  13. 5Y4DSJQU74%PNBJO.PEFMʁ
    w 5Y4DSJQU
    3FRVFTU 5Y4DSJQU 3FTQPOTF
    7BMJEBUJPO
    %#
    "DDFTT
    #VTJOFTT
    -PHJD
    %#
    "DDFTT

    View full-size slide

  14. 5Y4DSJQU74%PNBJO.PEFMʁ
    w %PNBJO.PEFM
    3FRVFTU 6TFDBTF 3FTQPOTF
    3FQPTJUPSZ
    &OUJUZ
    %#
    "DDFTT #VTJOFTT
    -PHJD
    0SDIFTUSBUF
    7BMVF0CKFDU
    #VTJOFTT
    -PHJD
    %PNBJO4FSWJDF
    #VTJOFTT
    -PHJD

    View full-size slide

  15. 5Y4DSJQU74%PNBJO.PEFMʁ
    w 5Y4DSJQU
    3FRVFTU 5Y4DSJQU 3FTQPOTF
    7BMJEBUJPO
    %#
    "DDFTT
    #VTJOFTT
    -PHJD
    %#
    "DDFTT
    FBTZͰ͏Ε͍͠

    View full-size slide

  16. 5Y4DSJQU74%PNBJO.PEFMʁ
    w %PNBJO.PEFM
    3FRVFTU 6TFDBTF 3FTQPOTF
    3FQPTJUPSZ
    &OUJUZ
    %#
    "DDFTT #VTJOFTT
    -PHJD
    0SDIFTUSBUF
    7BMVF0CKFDU
    #VTJOFTT
    -PHJD
    %PNBJO4FSWJDF
    #VTJOFTT
    -PHJD
    TJNQMFʹ
    Ͱ͖ͯ͏Ε͍͠ʂʂ

    View full-size slide

  17. IUUQTUXJUUFSDPNLBXBTJNBTUBUVT

    View full-size slide

  18. LBXBTJNB͞Μ͕ͥΜͿॻ͍ͯͨ

    View full-size slide

  19. "ύʔτ·ͱΊ
    w 5Y4DSJQUJTFBTZCVUTPNFUJNFTDPNQMFY
    w 5Y4DSJQUɺѱऀʹ͞Ε͕͚ͪͩͲɺৗʹ5Y4DSJQU͕ѱͳΘ͚Ͱ͸ͳ͍ɻ
    w े෼ʹ4JNQMFͳϢʔεέʔεͰ͸ɺ5Y4DSJQUͰ4JNQMF &BTZ͕࣮ݱͰ͖ͯ͏
    Ε͍͠
    w ٯʹ4JNQMFͳͷʹυϝΠϯΦϒδΣΫτಋೖͨ͠ΒDPNQMJDBUFEʹͳͬͯ͠
    ·͏Α
    w ΈΜͳେ޷͖'J[[#V[[&OUFSQSJTF&EJUJPO

    View full-size slide

  20. %PNBJO.PEFM͸ʮநग़ʯ͢Δ΋ͷ
    w %PNBJO.PEFM͸ҭͯΔ΋ͷʢཁग़యʣͰ͋Δ
    w ͔࣮ͨ͠ફ%%%ʹͦΜͳ͜ͱॻ͍ͯ͋ͬͨؾ͕͢Δʢͪΐͬͱௐ΂Δ࣌ؒ
    ͕ͳ͔ͬͨʣ
    w ͭ·Γɺ࠷ॳͷ͏ͪ͸ͲΜͳυϝΠϯϞσϧΛݟग़ͤ͹͍͍͔Θ͔Βͳ͍
    ͜ͱ͕ଟ͍
    w ϓϩμΫτΛఏڙ͠ଓ͚Δ͏ͪʹΑΓྑ͍υϝΠϯϞσϧ͕ݟ͔ͭΓ࢝ΊΔ

    View full-size slide

  21. 5Y4DSJQU74%PNBJO.PEFMʁ
    w 5Y4DSJQU
    3FRVFTU 5Y4DSJQU 3FTQPOTF
    7BMJEBUJPO
    %#
    "DDFTT
    #VTJOFTT
    -PHJD
    %#
    "DDFTT

    View full-size slide

  22. 5Y4DSJQU74%PNBJO.PEFMʁ
    w 5Y4DSJQU
    3FRVFTU 5Y4DSJQU 3FTQPOTF
    7BMJEBUJPO
    %#
    "DDFTT
    #VTJOFTT
    -PHJD
    %#
    "DDFTT
    ͜ΕΛ

    View full-size slide

  23. 5Y4DSJQU74%PNBJO.PEFMʁ
    w %PNBJO.PEFM
    3FRVFTU 6TFDBTF 3FTQPOTF
    3FQPTJUPSZ
    &OUJUZ
    %#
    "DDFTT #VTJOFTT
    -PHJD
    0SDIFTUSBUF
    7BMVF0CKFDU
    #VTJOFTT
    -PHJD
    %PNBJO4FSWJDF
    #VTJOFTT
    -PHJD

    View full-size slide

  24. 5Y4DSJQU74%PNBJO.PEFMʁ
    w %PNBJO.PEFM
    3FRVFTU 6TFDBTF 3FTQPOTF
    3FQPTJUPSZ
    &OUJUZ
    %#
    "DDFTT #VTJOFTT
    -PHJD
    0SDIFTUSBUF
    7BMVF0CKFDU
    #VTJOFTT
    -PHJD
    %PNBJO4FSWJDF
    #VTJOFTT
    -PHJD
    ঃʑʹ͜͏͢Δ

    View full-size slide

  25. ͦΜͳ͜ͱ͕Մೳͳͷ͔ʂʁ

    View full-size slide

  26. 5Y4DSJQU74%PNBJO.PEFMʁ
    w 5Y4DSJQU
    3FRVFTU 5Y4DSJQU 3FTQPOTF
    7BMJEBUJPO
    %#
    "DDFTT
    #VTJOFTT
    -PHJD
    %#
    "DDFTT

    View full-size slide

  27. 5Y4DSJQU74%PNBJO.PEFMʁ
    w %PNBJO.PEFM
    3FRVFTU 6TFDBTF 3FTQPOTF
    3FQPTJUPSZ
    &OUJUZ
    %#
    "DDFTT #VTJOFTT
    -PHJD
    0SDIFTUSBUF
    7BMVF0CKFDU
    #VTJOFTT
    -PHJD
    %PNBJO4FSWJDF
    #VTJOFTT
    -PHJD

    View full-size slide

  28. ֎͔ΒΈΔͱಉ͡

    View full-size slide

  29. IUUQTUXJUUFSDPNLBXBTJNBTUBUVT

    View full-size slide

  30. LBXBTJNB͞Μ͕ͥΜͿॻ͍ͯͨ


    View full-size slide

  31. 5Y4DSJQUJTB6TFDBTF
    w 5Y4DSJQUϨϕϧͰͷ6OJU5FTU͕ॻ͔Ε͍ͯΕ͹ɺͦΕ͸ͦͷ··6TFDBTFϨ
    ϕϧͷ6OJU5FTUʹͳΔ
    w ͜ͷςετΛյ͞ͳ͍6TFDBTFϨϕϧͰͷڍಈ͕୲อ͞Ε͍ͯΔ
    w օ͞Μେ޷͖ϦϑΝΫλϦϯάͷ͓࣌ؒͰ͢
    w 7BMVF0CKFDUͷநग़ͱ͔͸ΊͬͪΌίετ௿ͦ͘ΕͳΓʹޮՌ͕͋Δخ͠
    ͍΍ͭ
    w %%%ͬͯ݁ہී௨ͷ00ͩΑͶͬͯͷ͸͜͜ͷ࿩

    View full-size slide

  32. #ύʔτ·ͱΊ
    w 5Y4DSJQUͱ%PNBJO.PEFM͸ೋ߲ରཱͰ͸ͳͯ͘ϨΠϠʔ͕ҟͳΔ
    w 5Y4DSJQUͱಉ͡ϨΠϠʔʹ͍Δͷ͸6TFDBTF
    w 5Y4DSJQUΛ͖ͪΜͱςετͰक͓ͬͯ͘͜ͱͰஈ֊తʹ5Y4DSJQU͔Β%PNBJO
    .PEFMͷநग़͕Մೳ
    w ͭ·ΓͪΌΜͱςετॻ͍ͯ͋Ε͹5Y4DSJQUͰ΋͑͑

    View full-size slide

  33. མͪึर͍
    w 6TFDBTFϨϕϧͷςετॻ͍ͱ͘ͱɺ5Y4DSJQU͕$PNQMFYʹͳ͖ͬͯͨͱ͖
    ʹͭΒ͘ͳΓ·͢
    w $PNQMFY4JNQMFCVUTPNFUJNFTDPNQMJDBUFE΁ͷ͖͔͚ͬ΋͔ͭΊ
    Δ
    w $PNQMJDBUFE͡Όͳͨ͘͢Ίʹ͸00ྗʢʁʣ͕ඞཁͳͷ͡Όʜʜ

    View full-size slide

  34. IUUQTUXJUUFSDPNPOJHSB@TUBUVT
    6TFDBTFϨϕϧͷςετॻ͍ͯཉ͍͠

    View full-size slide

  35. ·ͱΊ
    w ʮ%%%ͱ͔ΫϦʔϯΞʔΩςΫνϟͱ͔ϚΠΫϩαʔϏεͱ͔Ͳ͏Ͱ΋͍͍
    ʢ5Y4DSJQUͰ͍͍ʣ͔Βͱʹ͔͘ϩάݟͯTFOUSZݟͯEBUBEPHݟͯཉ͍͠ʯ͕
    ੒ཱ͢ΔͨΊʹ͸
    w Ϣʔεέʔε͕े෼ʹγϯϓϧͰ͋Γɺ5Y4DSJQUͰ4JNQMF͔ͭ&BTZ͕࣮ݱ
    Ͱ͖Δ
    w 03"/%
    w 5Y4DSJQUʹରͯ͠Ϣχοτςετ͕ॻ͔Ε͓ͯΓɺ6TFDBTFϨϕϧͰͷϦϑ
    ΝΫλ͕҆શʹߦ͑Δ

    View full-size slide

  36. ͖ͭͮ͸ʢ͋Ε͹ʣ
    σΟεΧογϣϯͰ

    View full-size slide