Slide 1

Slide 1 text

ۀ຿Ͱ࢖͑ΔGolang katryo

Slide 2

Slide 2 text

໨࣍ 1. Golang෍ڭͷͨΊͷIDEಋೖ 2. ۀ຿Ͱ࢖͑ΔCLIΞϓϦΛGolangͰ࡞ͬͨ

Slide 3

Slide 3 text

1.Golang෍ڭͷͨΊͷ
 IDEಋೖ

Slide 4

Slide 4 text

GolangΛࣾ಺Ͱ޿ΊΔʹ͸?

Slide 5

Slide 5 text

։ൃ؀ڥͷ࡞ΓํΛ
 ڭ͓͑͋͏

Slide 6

Slide 6 text

Golang։ൃ؀ڥ • GoΛΠϯετʔϧ • GopathΛઃఆ • ͨΊ͠ʹgo runͰHello worldͯ͠ΈΔ

Slide 7

Slide 7 text

IDE • ੩తܕ෇͚ݴޠͰ͋Δ͜ͱͷར఺Λੜ͔͢ • ΠϯετʔϧͷޙɺGOPATHΛઃఆ • ϝχϡʔόʔͷදࣔ(View)͔Β”Manage GOPATH…”Λબ୒

Slide 8

Slide 8 text

GOPATHઃఆ • Manage GOPATHͰɺࣗ෼ͷઃఆͨ͠GOPATH Λॻ͘

Slide 9

Slide 9 text

ΧϥʔεΩʔϚ • ݸਓతʹSublime text෩ͷΧϥʔεΩʔϚ͕޷͖

Slide 10

Slide 10 text

2.ۀ຿Ͱ࢖͑ΔCLIΞϓϦΛ
 GolangͰ࡞ͬͨ

Slide 11

Slide 11 text

Golangͷ࢖్͍ • CLI • γΣϧεΫϦϓτͷ͔ΘΓ • ……ͦΕ͚ͩʁ

Slide 12

Slide 12 text

ͳΜͱ͔ͯ͠GoΛ
 ۀ຿Ͱ࢖͍͍ͨ

Slide 13

Slide 13 text

ࢥ͍͍ͭͨ

Slide 14

Slide 14 text

ςετ࣮ߦͷ଴ͪ࣌ؒ໰୊ • ςετΛ࣮ߦ͢Δͱɺ਺ेඵʙ਺෼ͷ଴ͪ࣌ ͕ؒൃੜ͢Δ • ୀ۶ • GoͷྗͰ଴ͪ࣌ؒΛָ͘͢͠Δ • ԻָΛྲྀͤ͹ָ͘͠ͳΔͷͰ͸ͳ͍͔ʁ

Slide 15

Slide 15 text

γΣϧεΫϦϓτΛ
 ࢧԉ͢ΔϓϩμΫτΛ GoͰ࡞Ζ͏

Slide 16

Slide 16 text

૝ఆ͢ΔγνϡΤʔγϣϯ • ./heavy_task ͸ɺॏ͍ॲཧΛ࣮ߦ͢ΔγΣϧ εΫϦϓτ • ςετɺը૾ॲཧɺetc • ./heavy_taskΛ࣮ߦ͢Δؒʹۓഭͨ͠ԻָΛ ྲྀ͠ɺ׬ྃͨ͠ΒϑΝϯϑΝʔϨΛྲྀ͍ͨ͠

Slide 17

Slide 17 text

࢖ͬͨϥΠϒϥϦ • portaudio-go • portaudioͷgoόΠϯσΟϯά • Իָ࠶ੜͷίʔυ͸αϯϓϧΛ΄΅ͦͷ·· ࢖ͬͨ • αϯϓϧͷίʔυ͸aiffΛ࠶ੜ͢Δ΋ͷͩͬͨͷ ͰɺaiffͷԻָϑΝΠϧΛ࢖͏͜ͱʹͨ͠

Slide 18

Slide 18 text

ͳͥԻָͱGoͳͷ͔ • Go͸ฒߦॲཧ͕ಘҙ • ChannelΛ࢖͑͹ɺൺֱత؆୯ʹฒߦॲཧ͕ ॻ͚Δ • ʮԿ͔ͷλεΫΛ࣮ߦ͠ͳ͕Βɺಉ࣌ʹԻָ Λ࠶ੜ͠ɺλεΫ͕ऴྃͨ͠ΒɺԻָΛ੾Γ ସ͑Δʯͷ͸ɺͪΐͬͱ໘౗ͳฒߦॲཧ

Slide 19

Slide 19 text

νϟϯωϧ • ผͷGoroutineؒͰϝοηʔδΛ΍ΓͱΓͰ͖Δ • λεΫ։࢝ɾλεΫ׬ྃͳͲΛɺνϟϯωϧΛ࢖ͬͯ௨஌ͨ͠

Slide 20

Slide 20 text

WEB+DB vol.82 • Golangͷॳ৺ऀ޲͚ྑ هࣄ • jxck͞Μ͕ࣥච • Goroutineʹ͍ͭͯ΋ॻ ͍ͯ͋Δ