Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
5分で知るGo言語
Search
yudoufu
September 08, 2014
Programming
0
160
5分で知るGo言語
社内向けLTとして用意したGo言語の入門以前の紹介。
yudoufu
September 08, 2014
Tweet
Share
More Decks by yudoufu
See All by yudoufu
Project開始後に導入するAssetsの自動共有
yudoufu
2
3.5k
Drink Meetup with Mercari #36 Souzoh編
yudoufu
0
1k
daemontools-kobanashi
yudoufu
0
77
Casualにインフラテストへ入門した話
yudoufu
2
4.1k
Other Decks in Programming
See All in Programming
データの民主化を支える、透明性のあるデータ利活用への挑戦 2025-06-25 Database Engineering Meetup#7
y_ken
0
260
複数アプリケーションを育てていくための共通化戦略
irof
10
4k
AIコーディング道場勉強会#2 君(エンジニア)たちはどう生きるか
misakiotb
1
240
WindowInsetsだってテストしたい
ryunen344
1
190
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
2
530
Spring gRPC で始める gRPC 入門 / Introduction to gRPC with Spring gRPC
mackey0225
2
520
Select API from Kotlin Coroutine
jmatsu
1
180
業務自動化をJavaとSeleniumとAWS Lambdaで実現した方法
greenflagproject
1
120
TypeScript LSP の今までとこれから
quramy
1
510
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
120
プロダクト開発でも使おう 関数のオーバーロード
yoiwamoto
0
160
從零到一:搭建你的第一個 Observability 平台
blueswen
1
960
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
270
20k
Raft: Consensus for Rubyists
vanstee
140
7k
A Tale of Four Properties
chriscoyier
159
23k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Being A Developer After 40
akosma
90
590k
Bash Introduction
62gerente
614
210k
The Cost Of JavaScript in 2023
addyosmani
51
8.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
We Have a Design System, Now What?
morganepeng
52
7.6k
GitHub's CSS Performance
jonrohan
1031
460k
Designing for Performance
lara
609
69k
Transcript
ͰΔ(Pݴޠ %BJDIJ,BNFNPUP $SPDPT)BDL)PVS
͜͜Ͱ͢͜ͱ w (Pݴޠʹ৮Εͨ͜ͱͳ͍ਓ͕ɺ5PVSPG(PΛ࢝ ΊΔͷʹࠔΒͳ͍Α͏ʹɺ)FMMP 8PSME·Ͱ ! w ·͊ɺͩ͠ɻ w ͕ٱʑLFZOPUF࡞Δ࿅श͔ͨͬ͠
SZ
ΞδΣϯμ w (Pݴޠͱ w (PQIFS w ڥΛ͑Δ w )FMMP8PSME w
جຊίϚϯυͱ͔
(Pݴޠͱ w (PPHMFͷ࡞ͬͨίϯύΠϧܕϓϩάϥϜݴޠ w ޙൃݴޠͳΒͰͷϞμϯͰॻ͖͍͢4ZOUBY w ίʔσΟϯάελΠϧܾΊΒΕͯΔ͠ɺެ͔ࣜΒϑΥʔ Ϛολ͕ఏڙ͞ΕͯΔ w ͕༰қͳ୯ҰόΠφϦ
w ๛ͳඪ४ύοέʔδ $ݴޠൺ͚ͩͲ w ಛʹฒྻॲཧ͚ͷػೳ͕๛
(Pݴޠͱ w ެࣜαΠτ w IUUQHPMBOHPSH w ΦϯϥΠϯ࣮ߦͱ͔ग़དྷΔεάϨϞϊ w 4UBCMF7FSTJPO
(PQIFS w ެࣜΩϟϥΫλʔ w Β͕͖͘෩ w ͖͍ w Ͳ͏ͯ͜͠͏ͳͬͨ
(PQIFS w ͵͍͙ΔΈ͋Δ w ΘΓͱछྨ͋Δ෩ ! w HPMBOH͢Δਓͷ͜ͱɺ HPQIFSͬͯݺͿΒ͍͠ɹ
ڥΛ͑Δ w ৽͍͠ͷͰɺΘΓͱ͍͍ϖʔεͰਐԽͯ͠Δ w खܰʹ৽͍͠ڥ͍͑ͨ w ͪΐ͍ݹใʹৼΓճ͞Εͳ͍Α͏ʹܰ͘հ
ίϯύΠϥͷ४උ w .BD ! w %FCJBO BOEBOZPUIFSMJOVY w QBDLBHF͕ݹ͍ͷͰɺHPEFCΛ͏ͱָ
! % wget https://godeb.s3.amazonaws.com/godeb-‐amd64.tar.gz % tar xvzf godeb-‐amd64.tar.gz % sudo ./godeb install 1.3.1 % brew install go
࡞ۀσΟϨΫτϦ w (01"5)ͱݺΕΔ࡞ۀσΟϨΫτϦ͕ඞཁ w ࣗͷ͖ͳॴʹ͍͍ͯ͠ w ྫ͑ɺ)0.&PQUHPΛ࡞ͬͯΔɻ % mkdir -‐p
$HOME/opt/go/src # srcඞਢʹͳΔͷͰ࡞ͬͱ͘ % echo ‘export GOPATH=$HOME/opt/go’ >> $HOME/.zshrc
࡞ۀσΟϨΫτϦ w (Pؔ࿈ͷQBDLBHFྨશ෦(01"5)ʹೖΔ w ࣗͷύοέʔδ͜͜Ͱ࡞Δ ! w ಈੜ͞ΕΔ . ├──
pkg │ └── darwin_amd64 │ ├── code.google.com │ ├── github.com │ └── honnef.co └── src ├── code.google.com │ └── p ├── github.com │ ├── crocos │ ├── golang │ ├── jstemmer │ ├── kisielk │ ├── mitchelh │ └── nsf └── honnef.co └── go
WJNʹ͍ͭͯ w WJNNFSͳΒ ࠷ॳ WJNHP͕Φεεϝ w IUUQTHJUIVCDPNGBUJIWJNHP w (Pʹඪ४ͷWJNαϙʔτ͋Δ֦͠ு͢Δ ͷ͋Δ͚Ͳɺ·ͣखܰͳͷͰ
w ·͊WJNઃఆ)FMMP 8PSMEޙͰ͍͍Μ͡ΌͶ
ิ w 2Α͘(03005ઃఆ͠ΖͬͯهࣄݟΔ͚Ͳʁ w "͋Εɺݹ͍ίϯύΠϧؔ࿈ઃఆͳΜͰɺHPEFC ͰೖΕΕؾʹ͠ͳͯ͘େৎͬ͢ w ࢀߟIUUQLXNUOFUJOEFYQIQ ZPVEPOUOFFEUPTFU HPSPPUSFBMMZ
)FMMP 8PSME w Կͱ͋ΕͬͯΈΑ͏ w ·ͣ࡞ۀσΟϨΫτϦΛ४උ ! w TSDҎԼΛϦϙδτϦ໊ͬΆ͘࡞Δ w
HPHFUͷϑΥʔϚοτʹ߹ΘͤͯΔΜͰ͢ % cd $GOPATH/src % mkdir -‐p github.com/crocos/go-‐helloworld # ྫ͑Ͷɻ % vim main.go
)FMMP 8PSME w ҙ w JOEFOUIBSEUBC w GVODNBJO \Χοίվߦ͠ͳ͍Ͱίί w
࢝·ΓNBJOQBDLBHFͷNBJO͔ؔΒ package main ! import “fmt” ! func main() { fmt.Println(“Hello, World!”) }
)FMMP 8PSME ! w ͘͠ ! w ʘ ?P? ʗ
% go run main.go # Hello, World! % go build main.go % ./go-‐helloworld
جຊతͳίϚϯυͱ͔ w ରϑΝΠϧΛίϯύΠϧ࣮ߦ w ಈ࡞ςετͳͲʹ͏ɻ ! w ରσΟϨΫτϦҎԼͷίϯύΠϧɺόΠφϦੜ %
go run main.go hoge.go … % go build
جຊతͳίϚϯυͱ͔ w ύοέʔδΛऔͬͯ͘Δ w ֎෦ϥΠϒϥϦΛऔಘͨ͠ΓɺύοέʔδΛ࣋ͬ ͖ͯͨΓ৭ʑ w (01"5)ͷԼʹల։͞ΕΔ % go
get github.com/crocos/rds-‐testrunner
͜ͷ͋ͱ w UPVSPGHP w IUUQHPUPVSKQBQQTQPUDPN w HPMBOHKQߋ৽͞Εͯͳ͍ͷͰݟͪΌμϝ w ࠓ݄ͷ8&# %#
w &⒎FDUJWF(P w IUUQTHPMBOHPSHEPDF⒎FDUJWF@HPIUNM