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
Ryuji Iwata
December 23, 2014
Programming
0
62
Go一緒にいかが?
Let's start the Go.
Ryuji Iwata
December 23, 2014
Tweet
Share
More Decks by Ryuji Iwata
See All by Ryuji Iwata
私のMicrosoft Azure 2023
qt_luigi
0
170
開発・インフラ・コラボレーティブ担当者目線で読み解く、Build 2023 の注目トピック - 開発パート
qt_luigi
0
9
私なりのArchitect’s Guide to Data Model Optimizationと知り得たこと
qt_luigi
0
290
Azure App ServiceのGo紹介 [2022年12月版]
qt_luigi
1
530
Dapr new building block: Distributed lock
qt_luigi
0
98
オープンセミナー岡山2022殿の13人
qt_luigi
0
25
FaaSなAzure FunctionsのGo紹介
qt_luigi
0
120
私と合同勉強会 in 大都会岡山
qt_luigi
0
69
私の趣味TechとICTコミュニティ
qt_luigi
0
40
Other Decks in Programming
See All in Programming
GitHub Actionsで泣かないためにやっておきたい設定 / Recommended GHA settings to avoid crying
pinkumohikan
3
530
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
1
170
try!Swift Tokyo 2024 参加報告 LT
akidon0000
1
220
Scalable Customer Journey Orchestration (CJO)
lewuathe
0
270
Code Reviews
bkuhlmann
4
890
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
230
雑に思考を整理する技術と効能
konifar
59
29k
educure_カリキュラム生操作マニュアル.pdf
linew_official
0
780
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
140
Rethinking UI building strategies @ SFI 2024
letelete
0
270
使ってみよう Azure AI Document Intelligence
kosmosebi
2
310
エンターテイメント業界で利用されるAWS
demuyan
0
210
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
25
5.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
The Cost Of JavaScript in 2023
addyosmani
16
3.9k
Imperfection Machines: The Place of Print at Facebook
scottboms
260
12k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Optimizing for Happiness
mojombo
370
69k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
The Mythical Team-Month
searls
216
42k
Bash Introduction
62gerente
604
210k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
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!