Slide 1

Slide 1 text

ͣͬͱRubyΛ΍͍ͬͯͨ ΤϯδχΞ͕Goʹೖ໳͠ ͯ࠳ંͯ͠࠶௅ઓͨ͠࿩ 2017/6/5 GoݴޠLTେձʂ ʮ࠷ۙɺGoݴޠ࢝Ί·ͨ͠ʯͷձ @suzan2go

Slide 2

Slide 2 text

ࣗݾ঺հ • גࣜձࣾΫϥ΢υϫʔΫε • ླ໦݈ଠ (Twitter / GitHub @suzan2go) • ࢓ࣄͰ͸Ruby / JavaScriptΛॻ͍͍ͯΔΞϓϦ έʔγϣϯΤϯδχΞ • 4݄͔ΒझຯͰGoݴޠΛͪΌΜͱ৮Γ࢝Ί·ͨ͠

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

ॻ͍ͯ·ͤΜ ผਓͰ͢

Slide 5

Slide 5 text

ࠓ೔ͷ࿩ RubyΛ΍͍ͬͯͨ ΤϯδχΞ͕GoΛ࢝Ίͯ Կʹ࠳ંͯ͠ Ͳ͏࠶௅ઓͯ͠͏·͍ͬͨ͘ ͔

Slide 6

Slide 6 text

Goݴޠͱͷग़ձ͍

Slide 7

Slide 7 text

Goݴޠͱͷग़ձ͍(2016೥4݄)

Slide 8

Slide 8 text

Goݴޠͱͷग़ձ͍ • ಉ྅͕ͪΐͬͱ৮͍ͬͯͨͷͰ໊લ͘Β͍͸஌ͬ ͍ͯͨ • GAE / Goͷ૊Έ߹Θͤੌ͍ʂʂ • ͪΐ͏Ͳ৽نࣄۀͷ্ཱͪ͛ʹؔΘ͍ͬͯͯͲΜ ͳߏ੒Ͱ࡞Δͷ͔ߟ͍͑ͯͨ • ͜Ε͔Β͸Go͕དྷͦ͏ͩʂʂͳΜ͔࡞ͬͯΈΑʂ

Slide 9

Slide 9 text

࠳ંɾɾɾ

Slide 10

Slide 10 text

ഊҼ • GoݴޠͰRubyͷΑ͏ͳΦϒδΣΫτࢦ޲Λ ΍Ζ͏ͱͯ͠͠·ͬͨ • GoݴޠͰRubyͷΑ͏ʹָʹॻ͘ํ๏͕ͳ͍ ͔୳͠ٻΊͯ͠·ͬͨ

Slide 11

Slide 11 text

GoݴޠͰRubyͷΑ͏ͳΦϒδΣ Ϋτࢦ޲Λ΍Ζ͏ͱͯ͠͠·ͬͨ Ҿ༻ : GoͷΞϯνύλʔϯ http://golang.rdy.jp/2016/07/26/antiptn/

Slide 12

Slide 12 text

GoݴޠͰRubyͷΑ͏ʹָʹॻ͘ ํ๏͕ͳ͍͔୳͠ٻΊͯ͠·ͬͨ • Go͸ےྗ͕…ͱ͍͏΍ͭʁ • λΠϓ਺ΛݮΒ͢Α͏ͳ͜ͱΛؤுΖ͏ͱ͢Δͱେମ͸ ·ͬͨ • ౰࣌͸ɺʮ͜Εઈର΋ͬͱָͳॻ͖ํ͋ΔͩΖʔ͆ʯͱԿ ͔ॻ͘౓ʹ୳͠ճͬͯ͠·ͬͨ… • ݁ՌɺGoͩͱ͜͏ॻ͔͘͠ͳ͍ɺΈ͍ͨͳͱ͜Ζʹམͪ ண͍ͯɺ·ͬͨ͘ΞϓϦέʔγϣϯͷ։ൃਐ·ͳ͔ͬͨ

Slide 13

Slide 13 text

ͦͯ͠Ұ೥͘Βཱ͍ͬͨ ࠓ೥ͷ4݄ ཧ༝͸๨Ε͚ͨͲ Goݴޠ࠶௅ઓ

Slide 14

Slide 14 text

GitHubͰGoݴޠͷΞϓϦέʔ γϣϯΛ৭ʑݟͯΈΔ https://github.com/shohhei1126/bbs-go

Slide 15

Slide 15 text

Goݴޠͷઃܭʹ͍ͭͯͷهࣄΛ ৭ʑಡΜͰΈΔ http://www.alexedwards.net/blog/organising-database-access

Slide 16

Slide 16 text

Goݴޠͷઃܭʹ͍ͭͯͷهࣄΛ ৭ʑಡΜͰΈΔ http://deeeet.com/writing/2016/10/25/go-interface-testing/

Slide 17

Slide 17 text

GoʹैͬͯݟΔͱ ָ͘͠ͳͬͯ͘Δ

Slide 18

Slide 18 text

͜Μͳͱ͜Ζָ͕͍͠Ͱ͢Go • golintͰॻ͖ํΛڧ੍͞ΕΔͷͰ໎Θͳͯ͘ྑ͍(vs Ruby) • ܕ͕͋Δͷʹ(ΤσΟλͷαϙʔτ͕͋Δͷ͕͜Μͳʹ࠷ߴͱ͸)ɺ͔ͭίϯύΠϧ͕ ૣ͍ • σϑΝΫτͳWAFͱ͔͕·ͩͳ͍෼ɺ৭ʑࣗ෼Ͱߟ͑ͳͯ͘͸͍͚ͳ͍ͷָ͕͍͠ (DBΞΫηεͲ͏͢ΔɺͲ͏͍͏ߏ଄ମ࡞Δ etc) • GoDocੌ͍ɻখ͍͞ϓϩδΣΫτͰ΋GoDocʹ৘ใ͕͋Δࣄ͕ଟ͍(golintͰίϝ ϯτͳ͍ͱౖΒΕΔ͔Βʁ) • ۪௚ʹॻ͘͜ͱ͕ٻΊΒΕΔ(ؾ͕͢Δ)ͷͰɺ΍Γ͍ͨ͜ͱʹϑΥʔΧεͨ͠ίʔυ ʹͳΔ(ݸਓͷײ૝Ͱ͢)

Slide 19

Slide 19 text

͜ΜͳΜ࡞ͬͯ·͢(झຯ)ᶃ • Ոఉ಺೔هΞϓϦͷόοΫΤϯυAPI(·ͩࣗ෼ͷՈఉ಺ݶఆ ެ։)
 ࢖͍ͬͯΔύοέʔδ͸labstack/echoɺjinzhu/gormͳͲ

Slide 20

Slide 20 text

͜ΜͳΜ࡞ͬͯ·͢(࢓ࣄ)ᶄ • GitHubͷ͓૟আ͢Δ΍ͭ(ࠓͷͱ͜ΖReleasesΛফ͚ͩ͢…)
 ࢖༻ύοέʔδ spf13/cobraɺgoogle/go-github ͳͲͳͲ


Slide 21

Slide 21 text

·ͱΊ • GoʹೖΕ͹Goʹै͑ • ʮΦϒδΣΫτࢦ޲ݴޠʯͱ͸৭ʑҧ͏ͱ͜Ζ΋ଟ͍͜ͱΛೝΊΑ͏ • ָΛ͢Δ(୹͘ॻ͚Δ)Α͏ͳॻ͖ํΛؤு͕ͬͯ͢͞ΑΓɺ۪௚ʹॻ ͍͍ͯ͘΄͏͕݁Ռతʹ͸Α͍ίʔυʹͳΔؾ͕͢Δ(ݸਓͷײ૝Ͱ ͢) • ઌਓͷॻ͍ͨίʔυɾ஌ݟΛ୔ࢁࢀߟʹ͠Α͏ • GoʹैͬͯΈΔͱGoॻ͘ͷָ͘͠ͳͬͯ͘Δʂ

Slide 22

Slide 22 text

ࠓޙͷల๬ •΋ͬͱ࢓ࣄͰ΋ Goݴޠ࢖ͬͯ
 ͍͖͍ͨ