Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Go一緒にいかが?
Search
Ryuji Iwata
December 23, 2014
Programming
0
75
Go一緒にいかが?
Let's start the Go.
Ryuji Iwata
December 23, 2014
Tweet
Share
More Decks by Ryuji Iwata
See All by Ryuji Iwata
私のプログラミング人生のご紹介
qt_luigi
0
160
Azure AI Foundryのご紹介
qt_luigi
1
550
私なりのAIのご紹介 [2024年版]
qt_luigi
1
210
Azure ComputingとGo
qt_luigi
1
190
Go入門ハンズオン [準備編]
qt_luigi
1
120
Go入門ハンズオン [基礎編]
qt_luigi
1
130
本日のMicrosoft Azure
qt_luigi
0
130
私のEbitengineの第一歩
qt_luigi
0
730
私のMicrosoft Azure 2023
qt_luigi
0
360
Other Decks in Programming
See All in Programming
WebRTC、 綺麗に見るか滑らかに見るか
sublimer
1
150
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
100
ゲームの物理 剛体編
fadis
0
200
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
150
「文字列→日付」の落とし穴 〜Ruby Date.parseの意外な挙動〜
sg4k0
0
370
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
300
TVerのWeb内製化 - 開発スピードと品質を両立させるまでの道のり
techtver
PRO
3
1.4k
20251127_ぼっちのための懇親会対策会議
kokamoto01_metaps
2
420
React Native New Architecture 移行実践報告
taminif
1
130
All(?) About Point Sets
hole
0
280
20 years of Symfony, what's next?
fabpot
2
320
目的で駆動する、AI時代のアーキテクチャ設計 / purpose-driven-architecture
minodriven
11
4k
Featured
See All Featured
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
69k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Mobile First: as difficult as doing things right
swwweet
225
10k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Done Done
chrislema
186
16k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.1k
Six Lessons from altMBA
skipperchong
29
4.1k
Transcript
Go一緒にいかが? GDG中国 - 第24回勉強会@岡山 2014.5.10
Who am I? package self import “introduction” const ( Name
= “Ryuji IWATA”, Twitter = “@qt_luigi”, Occupation = “Software Developer”)
おしながき ・Go言語とは? ・Goのセットアップ ・Goツールの紹介 ・Goの標準的な開発の流れ ・Goの文法の実例と解説
Go言語とは?
Go言語とは?(詳しくはWebへ!) ・コンパイル方式のプログラミング言語 ・2009年11月にオープンソースプロジェクト ・BSD, Linux, Mac OS X, Windows に対応
・Google App Engine (Experimental) にも対応 ・シンプルと速さ ・ガーベジコレクション ・クラスなし ・同時実行処理を実装しやすい
Goのセットアップ
ダウンロード 公式バイナリー http://code.google.com/p/go/wiki/Downloads 対応OS(Go 1.2.2 の場合) Linux 2.6.23 以降 (CentOS/RHEL
5.x 除く) Mac OS X 10.6 以降、FreeBSD 7 以降、 Windows 2000 以降 (2000 は Go 1.2 系まで) System requirements - http://golang.org/doc/install#requirements
インストール 標準のインストール先(= GOROOT) Windows:c:¥Go PC-UNIX:/usr/local/go ツール用にPATHを通す(= GOROOT/bin) Windows:c:¥Go¥bin PC-UNIX:/usr/local/go/bin Install
the Go tools - http://golang.org/doc/install#install tar -C /usr/local -xzf go1.2.2.linux-amd64.tar.gz
動作確認ファイル作成 テキストエディターにて「hello.go」ファイルをUTF-8 (BOMなし)で作成。 package main import “fmt” func main() {
fmt.Printf(“hello, world¥n”) }
セットアップ確認 「go run ファイル名」を実行して動作を確認。 ↑Goのプログラムをコンパイルして実行。 $ go run hello.go hello,
world
Goツールの紹介
go または go help goツールの機能や使い方を表示。 ~$ go Go is a
tool for managing Go source code. ... The commands are: build compile packages and dependencies clean remove object files env print Go environment information fix run go tool fix on packages ...
go env Goの環境情報を表示。 ~$ go env GOARCH="amd64" ... GOOS="darwin" GOPATH="/Users/ユーザー名/gocode"
... GOROOT="/usr/local/go" ...
go version Goのバージョンを表示。 詳細は「Goの標準的な開発の流れ」にて。 ~$ go version go version go1.2.2
darwin/amd64
go fmt ソースのフォーマットを整形。 ~$ vim pi.go package pi const(Pi=3.14) ~$
go fmt pi.go pi.go ~$ cat pi.go package pi const ( pi = 3.14 )
go get パッケージをダウンロードしてインストール。 GOPATHの設定が必要なので、実行する場 合は「Goの標準的な開発の流れ」の後で。 ~$ go get github.com/golang/lint ~$
ls $GOPATH/src/github.com/golang/lint LICENSE golint lint_test.go testdata README lint.go misc ~$ ls $GOPATH/pkg/darwin_amd64/github.com/golang/ lint.a
・Bitbucket (Git, Mercurial) ・GitHub (Git) ・Google Code Project Hosting (Git,
Mercurial, Subversion) ・Launchpad (Bazaar) Remote import paths - http://golang.org/cmd/go/#hdr-Remote_import_paths リモートリポジトリー
その他のGoツール go build, go install, go test 「Goの標準的な開発の流れ」内で紹介。 go clean,
go fix, go list, go tool, go vet 当方の理解不足や使用頻度から、今回は 割愛させて頂きましたm(__)m ちなみにgo cleanは実行するディレクトリーに よって削除対象のファイルが異なりますq@w@p
Goの標準的な開発の流れ
目的と内容 「Writing, building, installing, and testing Go code」を進めて、Goの標準的な開発の流れを学び ましょう! 使用する資料へのリンク
https://docs.google. com/document/d/1bh2GpXg4i81DrungtvoF6vowOeiaiQ MVbL0zhnvRgJA/pub
Goの文法の実例と解説
目的と内容 「Learn X in Y minutes」を進めて、Goの文法や実 例を学びましょう! 使用する資料へのリンク https://docs.google. com/document/d/1Y6xy40urFNf4lwFaOaXbwX8N-oA-
SQiRE7YAfBTC2sM/pub
Happy Hacking!