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

Go言語と仮想通貨

3cb4e761dbdb7aebd1ffd85f752e1e3e?s=47 sonata
February 15, 2018

 Go言語と仮想通貨

3cb4e761dbdb7aebd1ffd85f752e1e3e?s=128

sonata

February 15, 2018
Tweet

Transcript

  1. 1 (PݴޠͱԾ૝௨՟ ελʔτΞοϓͳΤϯδχΞ-5ʂ ʙελʔτΞοϓ͸ͲΜͳٕज़Λۦ࢖ͯ͠։ൃΛߦ͍ͬͯΔͷ͔ʁʙ & EFWTVNJ& גࣜձࣾωΫετΧϨϯγʔ!TPOBUBSE

  2. Server Side Engineer @sonatard • University • Linux Server and

    Network Engineer • Canon • Develop Wireless LAN Module Simulator with SystemC • Develop TCP/IP protocol stack on RTOS • Go in my free time from 2014 • Mercari/Souzoh • Google App Engine Go Engineer • Mercari Atte • Next Currency • Google App Engine Go Engineer
  3. 3 ຊ೔͸ w ϒϩοΫνΣʔϯɺ(Pɺ(PPHMF$MPVE1MBUGPSNͷΤϯδχΞ͕૿͑ͯ͘ΕΔΑ͏पล ٕज़Λ঺հ͍ͨ͠ͱࢥ͍·͢ʂ

  4. • Ծ ૝ ௨ ՟ औ Ҿ ॴ ͱ प

    ล ٕ ज़ • Ծ ૝ ௨ ՟ ͱ G o • N e x t C u r r e n c y ͱ G A E / G o
  5. 5 Ծ૝௨՟औҾॴͱपลٕज़ w ϒϩοΫνΣʔϯ w ෼ࢄܕ୆ாٕज़ w औҾཤྺΛ·ͱΊͨϒϩοΫΛܨ͍Ͱߏ੒͞Ε͍ͯΔ w ඇதԝूݖ

    w தԝूݖ૊৫͕৘ใΛಠ઎͠ͳ͍ͨΊɺࣗ༝ʹΞϓϦέʔγϣϯΛ։ൃͰ͖Δ ϒϩοΫ औҾ औҾ औҾ લϒϩοΫͷϋογϡ
  6. 6 Ծ૝௨՟औҾॴͱपลٕज़ w ϒϩοΫνΣʔϯΛ؅ཧ͢Δϊʔυ ΫϥΠΞϯτ  w ֤ϊʔυ͕ϒϩοΫνΣʔϯΛෳ੡ͨ͠΋ͷΛอ͍࣋ͯ͠Δ w ৽͍͠৘ใ͸ϒϩʔυΩϟετ͞Εͯਵ࣌11ϊʔυʹߋ৽͞ΕΔ

    w ϊʔυ͸Ұൠతͳαʔόͷ্Ͱಈ࡞͢Δ
  7. 7 Ծ૝௨՟औҾॴͱपลٕज़ w ϊʔυͷ࣮૷ w Ծ૝௨՟ͷछྨʹΑ࣮ͬͯ૷͞Ε͍ͯΔݴޠ͸ҟͳΔ w #JUDPJOܥɹ #5$ -5$

    .0/"ͳͲ  w CUDE ެࣜ ˠ$  w CJUDPOJEˠ(P w #JUDPJOͷ৽ϓϩτίϧ-JHIUJOH/FUXPSL w MOE ެࣜ ˠ(P w &UIFSFVNܥ &5) 0.(ͳͲଟ͘ͷ௨՟  w HFUI ެࣜ ˠ(P w %"114ˠ4PMJEJUZPS7JQFS %"114ઐ༻ݴޠ  w &UIFSFVN্Ͱಈ࡞͢Δ෼ࢄΞϓϦέʔγϣϯ w ଞͷݴޠ͔Β4PMJEJUZ΁ͷτϥϯείϯύΠϧ΋ݕ౼͞Ε͍ͯΔ
  8. 8 Ծ૝௨՟औҾॴͱपลٕज़ w Ծ૝௨՟औҾॴ w தԝूݖ w Ұൠతͳ8FCΞϓϦέʔγϣϯ w αʔόɺΫϥΠΞϯτ

    w ίΠϯνΣοΫ ϏοτϑϥΠϠʔɺ#JOBODFɺ#JUUSFYͳͲ w ΢ΥϨοτͷൿີ伴͸ɺऔҾॴ͕؅ཧ͢Δ w ෼ࢄܕऔҾॴ %&9 %FDFOUSBMJ[FE&9DIBOHF w ඇதԝूݖ w ϒϩοΫνΣʔϯΞϓϦέʔγϣϯ w Yɺ,ZCFS/FUXPSL w ΢ΥϨοτͷൿີ伴͸ɺϢʔβ͕؅ཧ͢Δ
  9. 9 Ծ૝௨՟औҾॴͱपลٕज़ w Ծ૝௨՟औҾॴͷ࣮૷ w Ұൠతͳ8FCΞϓϦέʔγϣϯͷͨΊɺऔҾॴʹΑ࣮ͬͯ૷ݴޠ͸ҟͳΔ w DPJOUBQˠ(P w ϏοτϑϥΠϠʔˠ$

    w ίΠϯνΣοΫˠ3VCZPO3BJMT w #JOBODFˠ+BWB
  10. 10 Ծ૝௨՟औҾॴͱपลٕज़ w ΢ΥϨοτ w Ծ૝௨՟Λ؅ཧ͢Δ w ൿີ伴Ͱૹ͕ۚՄೳ w ΢ΥϨοτͷछྨ

    w ϗοτ΢ΥϨοτ w ίʔϧυ΢ΥϨοτ
  11. 11 Ծ૝௨՟औҾॴͱपลٕज़ w ΢ΥϨοτͷछྨ w ϗοτ΢ΥϨοτ w Πϯλʔωοτʹ઀ଓ͞Εͨ୺຤Λར༻ͨ͠΢ΥϨοτ w ൿີ伴͕Ұॹʹ؅ཧ͞Ε͍ͯΔ

    w ֎෦΁ͷૹ͕ۚଈ࣌ʹՄೳ Ϣʔβͷଈ࣌ग़ۚͷͨΊʹ͸ආ͚ΒΕͳ͍  w ୺຤͕ΫϥοΫ͞ΕΔͱൿີ伴͕౪೉ʹ͍͋ɺࢿ࢈Λ͢΂ͯ౪·ΕΔϦεΫ w ίʔϧυ΢ΥϨοτ w Πϯλʔωοτʹ઀ଓ͞Ε͍ͯͳ͍΢ΥϨοτ w ૹۚ͢ΔͨΊʹ͸1$ʹ઀ଓͯ͠τϥϯβΫγϣϯΛ࡞੒ޙɺτϥϯβΫγϣϯ͚ͩΛϒϩʔ υΩϟετ͢Δ͜ͱͰૹۚΛ࣮ݱ͢Δ w ख࡞ۀʹΑΔΦϖϨʔγϣϯ͕ඞਢʹͳΔͨΊɺऔҾॴΛར༻͢ΔϢʔβ͸ଈ࣌ʹૹ͕ۚͰ ͖ͳ͍ w ෺ཧతʹ౪·Εͳ͍ݶΓ౪೉ʹ͋͏͜ͱ͸ͳ͍
  12. 12 Ծ૝௨՟औҾॴͱपลٕज़ w ΢ΥϨοτͷ࣮૷ w CUDEˠ$  w CJUDPJOEˠ(P w

    HFUIˠ(P w &MFDUSVNˠ1ZUIPO w 1BSJUZˠ3VTU w #SFBE8BMMFU$PSFˠ$ w J04൛4XJGU w "OEPJSE൛+BWB w $PQBZˠ+BWBTDSJQU
  13. 13 Ծ૝௨՟औҾॴͱपลٕज़ w Ծ૝௨՟औҾॴ w ϒϩοΫνΣʔϯ w ΢ΥϨοτ 8FCαʔό %#

    ΞϓϦ 8FC ϗοτ΢ΥϨοτ ϒϩοΫνΣʔϯ ίʔϧυ ΢ΥϨοτ
  14. • Ծ ૝ ௨ ՟ औ Ҿ ॴ ͱ प

    ล ٕ ज़ • Ծ ૝ ௨ ՟ ͱ G o • N e x t C u r r e n c y ͱ G A E / G o
  15. 15 Ծ૝௨՟ͱ(P w ͳͥԾ૝௨՟ք۾ͷ࣮૷͸(P͕ଟ͍ͷ͔ʁ w جຊจ๏͕γϯϓϧ w ࡉ͔͍ॻ͖ํͷٞ࿦ʹͳΒͳ͍ w ։ൃऀͷֶश͕༰қ

    w ϝϯςφϯε͠΍͍͢ w ύϑΥʔϚϯε w ૉ௚ʹॻ͚ͩ͘Ͱे෼ͳύϑΥʔϚϯε͕ग़Δ w ฒྻॲཧͷ࣮૷͕༰қ w HPSPVUJOF DIBOOFM w ॆ࣮ͨ͠ඪ४ϥΠϒϥϦ w OFUIUUQ DSZQUPʜ w ॆ࣮ͨ͠ඪ४πʔϧ w HPGNU HPJNQPSUT EFQ HPMJOU HPWFU 
  16. • Ծ ૝ ௨ ՟ औ Ҿ ॴ ͱ प

    ล ٕ ज़ • Ծ ૝ ௨ ՟ ͱ G o • N e x t C u r r e n c y ͱ G A E / G o
  17. 17 /FYU$VSSFODZͱ("&(P ελʔτΞοϓ ΤϯδχΞ͕গͳ͍

  18. 18 /FYU$VSSFODZͱ("&(P ϓϩμΫτͷ։ൃ ಛʹࠩผԽཁҼͷػೳ։ൃʹूத͍ͨ͠

  19. 19 /FYU$VSSFODZͱ("&(P ػೳ։ൃʹूதͰ͖Δ؀ڥ࡞Γ

  20. 20 /FYU$VSSFODZͱ("&(P w ϓϩμΫτͷ։ൃ w Πϯϑϥ w ։ൃ؀ڥ w σϓϩΠ؀ڥ

    w $*؀ڥ w ςετ ϑϨʔϜϫʔΫɺॻ͖ํ  w ϑϨʔϜϫʔΫ΍ϥΠϒϥϦͷબఆ w ηΩϡϦςΟ w ΞϓϦέʔγϣϯͷΞʔΩςΫνϟݕ౼ w %#ͷઃܭ w "1*ͷઃܭ w ϏδωεϩδοΫͷίʔσΟϯά w ϏδωεϩδοΫΛ༻͍ͯΞϓϦέʔγϣϯΛߏங͢Δίʔυ w ΫϥΠΞϯτνʔϜ޲͚ͷυΩϡϝϯτ w ϩάղੳ
  21. 21 /FYU$VSSFODZͱ("&(P w ٕज़બ୒ w Πϯϑϥ w (PPHMF"QQ&OHJOF w ݴޠ

    w (P w ΠϯλʔϑΣʔεهड़ݴޠͱ௨৴ϓϩτίϧ w 1SPUPDPM#V⒎FSTPO)551
  22. 22 Πϯϑϥ(PPHMF"QQ&OHJOFΛ࠾༻ͨ͠ཧ༝ w Φʔτεέʔϧ w ࡞੒ͨ͠αʔϏε୯ҐͰɺෛՙʹԠͯࣗ͡ಈతʹΠϯελϯεΛ૿ݮ w Ձ͕֨ٸಅͨ͠ࡍͳͲͷεύΠΫతͳΞΫηεʹڧ͍ w #MVF(SFFO%FWFMPQNFOU

    w σϓϩΠ୯Ґ͝ͱʹόʔδϣϯ؅ཧ w τϥϑΟοΫͷҠߦɺϩʔϧόοΫͳͲ͕ίϚϯυͰՄೳ w ੬ऑੑ͔Βͷ৵ೖͷϦεΫͷ௿Լ w 04ͷ؅ཧ͕ෆཁ w 04ͷ੬ऑੑɺϛυϧ΢ΣΞ 44)αʔό΍8FCαʔό ͷ੬ऑੑͷߟྀ͕ෆཁ w ࣗ෼ͨͪͰ࣮૷ͨ͠ΞϓϦέʔγϣϯͷ੬ऑੑʹूதͰ͖Δ
  23. 23 ݴޠ(PΛ࠾༻ͨ͠ཧ༝ w ͳͥԾ૝௨՟ք۾ͷ࣮૷͸(P͕ଟ͍ͷ͔ʁͱಉ༷ͷཧ༝ w ্هʹՃ͑ͯ w (PPHMF"QQ&OHJOFͱͷ૬ੑ͕͍͍ w (PͷΠϯελϯε͸ɺΦʔτεέʔϧ࣌ͷεϐϯΞοϓNTͳͲͰ׬ྃ͢Δ

    w ੩తܕ෇͚ݴޠ w ࢿۚΛѻ͏ͨΊ։ൃ଎౓ΑΓ΋҆શੑΛॏࢹ
  24. 24 ௨৴ϓϩτίϧ1SPUPDPM#V⒎FSTPO)551Λ࠾༻ͨ͠ཧ༝ w ۙ೥(31$͕୆಄ w ͨͩ͠("&Ͱ͸(31$ະରԠ w ΠϯλʔϑΣʔεهड़ݴޠ *%- Ͱ͋Δ1SPUPDPM#V⒎FST͕ັྗ

    w ϦΫΤετɺϨεϙϯεɺϝιουΛ1SPUPDPM#V⒎FSTͰఆٛ w ఆٛϑΝΠϧ͔ΒαʔόɺΫϥΠΞϯτͷίʔυΛੜ੒ w αʔό(P w J044XJGU w "OEPJSE+BWB w ϑϩϯτ5ZQF4DSJQU w ϦΫΤετ΍Ϩεϙϯεͷ࢓༷͕มΘͬͨ৔߹ʹɺΫϥΠΞϯτ͸ίϯύΠϧͰؾ͕ ͭ͘͜ͱ͕Մೳ
  25. 25 ٕज़ৄࡉ IUUQTTQFBLFSEFDLDPNTPOBUBSEOFYUDVSSFODZHBFHP

  26. 26 ษڧձͷ͝঺հ  ۚ CMPDLDIBJOUPLZP (P.PCJMFϋϯζΦϯ The Go gopher designed

    by Renée French. The golang.tokyo gopher made by Takuya Ueda. Licnesed under the Creative Commons 3.0 Attribution License.  ۚ HPMBOHUPLZP (P.PCJMFϋϯζΦϯ
  27. 27 DPJOUBQࣄલొ࿥ΑΖ͓͘͠ئ͍͠·͢ʂ w ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ w IUUQTDPJOUBQKQ