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
Go一緒にいかが?
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ryuji Iwata
December 23, 2014
Programming
0
80
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
190
Azure AI Foundryのご紹介
qt_luigi
1
610
私なりのAIのご紹介 [2024年版]
qt_luigi
1
230
Azure ComputingとGo
qt_luigi
1
210
Go入門ハンズオン [準備編]
qt_luigi
1
140
Go入門ハンズオン [基礎編]
qt_luigi
1
150
本日のMicrosoft Azure
qt_luigi
0
150
私のEbitengineの第一歩
qt_luigi
0
770
私のMicrosoft Azure 2023
qt_luigi
0
380
Other Decks in Programming
See All in Programming
go directiveを最新にしすぎないで欲しい話──あるいは、Go 1.26からgo mod initで作られるgo directiveの値が変わる話 / Go 1.26 リリースパーティ
arthur1
2
560
CSC307 Lecture 15
javiergs
PRO
0
250
LangChain4jとは一味違うLangChain4j-CDI
kazumura
1
190
Cyrius ーLinux非依存にコンテナをネイティブ実行する専用OSー
n4mlz
0
150
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
560
GoのDB アクセスにおける 「型安全」と「柔軟性」の両立 - Bob という選択肢
tak848
0
110
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
990
Docコメントで始める簡単ガードレール
keisukeikeda
1
120
TipKitTips
ktcryomm
0
170
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
180
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
120
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
540
Featured
See All Featured
Designing for Timeless Needs
cassininazir
0
170
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
We Are The Robots
honzajavorek
0
200
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
Optimizing for Happiness
mojombo
378
71k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
180
Mind Mapping
helmedeiros
PRO
1
120
Why Our Code Smells
bkeepers
PRO
340
58k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
190
HDC tutorial
michielstock
1
550
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!