したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

Go言語勉強スレッド

1ひきぷろ:2017/03/01(水) 01:54:45 ID:W05e4jDU0
Go言語の勉強用スレッド

2ひきぷろ:2017/03/13(月) 02:58:15 ID:???0
How to write CUI application in Go - SSSSLIDE
http://sssslide.com/speakerdeck.com/k0kubun/how-to-write-cui-application-in-go

3ひきぷろ:2017/03/13(月) 03:00:08 ID:???0
Go言語でpongコマンドを実装する - Qiita
http://qiita.com/kurehajime/items/f9d225fab5eaa736913b

4ひきぷろ:2017/03/13(月) 03:01:50 ID:???0
ドキュメント - The Go Programming Language
http://golang-jp.org/doc/

5(-_-)さん:2017/03/13(月) 05:53:59 ID:???0
C/C++の経験あるならGoはチュートリアルだけでかなり分かると思う

英語版チュートリアル https://tour.golang.org/welcome/1

英語版チュートリアルにもリンクあるけど日本語版チュートリアル https://go-tour-jp.appspot.com/welcome/1

6ひきぷろ:2017/03/13(月) 13:02:37 ID:???0
なるほど。さんきゅー!
やってみるよー

7(-_-)さん:2017/03/19(日) 03:35:35 ID:???0
$GOPATHっていう特定のディレクトリパスが入ってる環境変数があって
そこにGo言語で作る全てのプロジェクトのソースを置く

githubにアカウントを持っててユーザ名がunkochanでhogeというプロジェクトを作りたいのなら

$GOPATH/src/github.com/unkochan/hoge/
というディレクトリ下でソースコードとかgit init(gitリポジトリ作る)とかする

hogeとは無関係なfugaというプロジェクトを作りたなったら同様に
$GOPATH/src/github.com/unkochan/fuga/
というディレクトリ作ってそのディレクトリで作業する


Goの外部ライブラリとかも$GOPATH/srcのとこに配置される
例えばgithubのユーザ名hageoyajiのzuraというプロジェクト名のライブラリを取り込むと
$GOPATH/src/github.com/hageoyaji/zura/
というディレクトリが作らせそこにリポジトリのファイル一式がダウンロードされる


githubとかでアカウント持ってなく自分のプロジェクトは外部(リモート)には保存しないというのなら
外部ライブラリのディレクトリパスとかぶら無さそうなディレクトリを用意したほうがいい
プロジェクト名がfoobarなら
$GOPATH/src/localhost/foobar/
とかでも適当でよい

8(-_-)さん:2017/03/19(日) 04:22:50 ID:???0
>>7
https://golang.org/doc/code.html#Workspaces

9(-_-)さん:2017/03/19(日) 04:48:29 ID:???0
https://golang.org/cmd/go/#hdr-Internal_Directories
プロジェクトのディレクトリ直下にinternalディレクトリを作るとそこは他のプロジェクトから参照できないソースコードを置けるらしい

https://golang.org/cmd/go/#hdr-Vendor_Directories
プロジェクトのディレクトリ直下にvenderディレクトリを作るとそこには他のプロジェクトをgit submodule的な感じで配置できるらしい

10(-_-)さん:2017/03/19(日) 05:16:33 ID:???0
https://godoc.org/golang.org/x/text/encoding/japanese?importers

日本語エンコーディングのパッケージを利用してるプロジェクトの一覧
色々あって面白い

11ひきぷろ:2017/03/19(日) 06:49:12 ID:???0
Goの使い方、どこかにまとめた方が他の人も読みやすそうだね。
Wikiに書いてくれてるの転記していこうかな

12ひきぷろ:2017/03/19(日) 18:29:53 ID:???0
projecthikky @ ウィキ - プログラミング言語/Go言語
https://www54.atwiki.jp/projecthikky/pages/105.html

Wikiにページだけ作ってみた

13(-_-)さん:2017/03/19(日) 18:57:32 ID:???0
>>12
乙です

14(-_-)さん:2017/03/19(日) 18:58:04 ID:???0
GoでWindowsのGUIアプリ作るのに便利なライブラリ
https://github.com/lxn/walk

15(-_-)さん:2017/03/19(日) 18:59:22 ID:???0
GoでAndroidアプリ作るための公式パッケージとか

https://godoc.org/golang.org/x/mobile
https://github.com/golang/go/wiki/Mobile
https://github.com/golang/mobile

サンプルコード
https://github.com/golang/mobile/blob/master/example/basic/main.go

16(-_-)さん:2017/03/19(日) 19:02:30 ID:???0
https://github.com/golang/go/wiki/SQLDrivers

データベースに接続するには有志作成によるドライバを使うぽい

17(-_-)さん:2017/03/19(日) 19:07:10 ID:???0
https://golang.org/pkg/image/
https://godoc.org/golang.org/x/image
Goでイメージファイルを取り扱うパッケージ?

18(-_-)さん:2017/03/19(日) 22:30:34 ID:???0
Goコードの書き方 - The Go Programming Language
http://golang-jp.org/doc/code.html

19ひきねこ ◆ez9QVuDvy2:2017/03/21(火) 05:57:41 ID:???0
GoはほぼCだね(´・ω・`)
Cに足りないもの付け加えたような言語
個人的には好きかもぉ(*´∀`)

20(-_-)さん:2017/03/21(火) 23:05:27 ID:???0
http://melpon.org/wandbox/permlink/9fhQBEA6ohq0cTAS

var a [5]int
b := a // これが配列のコピーだとは知らなかった

21(-_-)さん:2017/03/21(火) 23:25:28 ID:???0
http://melpon.org/wandbox/permlink/lGLhr7at2e5dJWpI

引数に配列を渡すときも気をつけないとダメか

22(-_-)さん:2017/03/21(火) 23:34:35 ID:???0
http://melpon.org/wandbox/permlink/jY7cuyQVBKcMBnnR

配列を持たせるときもコピーに気をつけないといけない

23(-_-)さん:2017/03/21(火) 23:43:21 ID:???0
http://melpon.org/wandbox/permlink/PKFN5sc4rWejKifE

スライスでキャパ超えるappendはメモリアロケーションとコピーが発生する

24(-_-)さん:2017/03/22(水) 00:04:38 ID:???0
http://melpon.org/wandbox/permlink/51oLa60tpAbtWNbm

appendのキャパ超えで発生するメモリアロケーションでは前のキャパの2倍になる(超やばい)

25(-_-)さん:2017/03/22(水) 00:10:02 ID:???0
>>24
必ずしも2倍というわけでは無さそう(でもやばい)
http://melpon.org/wandbox/permlink/OusATqyxBouP42mP

26(-_-)さん:2017/03/22(水) 09:30:52 ID:???0
PackageManagementTools ・ golang/go Wiki ・ GitHub
https://github.com/golang/go/wiki/PackageManagementTools

公式パッケージマネージャdep

GitHub - golang/dep: Go dependency tool
https://github.com/golang/dep

27(-_-)さん:2017/03/22(水) 09:33:38 ID:???0
>>26
depはまだアルファ版だった・・・未完成の実験版か

28(-_-)さん:2017/03/26(日) 05:27:17 ID:???0
https://play.golang.org/p/AR_P7T3b-L

使い方間違ってるけどパーサぽいの

29(-_-)さん:2017/03/27(月) 03:14:34 ID:???0
構造体に付けるタグを垣間見るコード

https://play.golang.org/p/xCOhdoP6I9

30(-_-)さん:2017/03/28(火) 07:28:13 ID:???0
time - The Go Programming Language
https://golang.org/pkg/time/


スレッドスリープはSleep

一定時間ごとの操作とか一定時間経過後の操作はNewTimerでTimer型使ってやる必要があるみたい
TickとAfterはGCがどうのとかリークがどうのとかあってやばそうな雰囲気がある(英語よくわかってない)

31(-_-)さん:2017/03/28(火) 07:30:14 ID:???0
一定時間ごとはNewTickerのTicker型だった

32(-_-)さん:2017/03/31(金) 22:51:16 ID:???0
go-bindata でコンパイル時にリソースを埋め込んじゃおう! - Qiita
http://qiita.com/ikawaha/items/c02d84cfd00f8f442500

33(-_-)さん:2017/04/01(土) 19:00:55 ID:???0
Go言語のコードをドキュメント化する

Godoc: documenting Go code - The Go Blog
https://blog.golang.org/godoc-documenting-go-code

godoc - GoDoc
https://godoc.org/golang.org/x/tools/cmd/godoc


go/doc パッケージ - golang.jp (※内容が古い)
http://golang.jp/pkg/go-doc

Effective Go ? プログラミング言語 Go ドキュメント v0.1 documentation
http://go.shibu.jp/effective_go.html#id5

34(-_-)さん:2017/04/01(土) 19:05:58 ID:???0
godoc - The Go Programming Language
http://golang-jp.org/pkg/code.google.com/p/go.tools/cmd/godoc/

日本語

35(-_-)さん:2017/04/01(土) 19:12:50 ID:???0
godoc(go doc)コマンド についてのまとめ - taknb2nchのメモ
http://d.hatena.ne.jp/taknb2nch/20131107/1383842703

ドキュメント作れるらしい

36(-_-)さん:2017/04/01(土) 19:23:23 ID:???0
http://go.shibu.jp/effective_go.html#id25

埋め込みの概念難しい

37(-_-)さん:2017/04/02(日) 19:04:02 ID:???0
go - The Go Programming Language
http://golang-jp.org/cmd/go/

日本語ドキュメント

38(-_-)さん:2017/04/02(日) 19:15:44 ID:???0
notes/gogenerate.md at master ・ practice-goldeneggg/notes ・ GitHub
https://github.com/practice-goldeneggg/notes/blob/master/golang/gogenerate.md

HDE Advent Calendar Day 23: Golang実装のクラウドサービスとMock - HDE Advent Calendar 2015
http://hde-advent-2015.hatenadiary.jp/entry/2015/12/23/181456

go generate が日本語文書少なくて良く分からない

39(-_-)さん:2017/04/02(日) 19:16:47 ID:???0
Generating code - The Go Blog
https://blog.golang.org/generate

英語はうーん・・・

40(-_-)さん:2017/04/02(日) 19:22:14 ID:???0
go generate のstringerの例を試してみるか

41(-_-)さん:2017/04/02(日) 20:43:17 ID:???0
そろそろ真面目に Golang 開発環境について考える ? GOPATH 汚染問題 - Qiita
http://qiita.com/spiegel-im-spiegel/items/73ebc684b5807277b7e2

そろそろ真面目に Golang 開発環境について考える ? Internal Packages と Vendoring - Qiita
http://qiita.com/spiegel-im-spiegel/items/baa3671c7e1b8a6594a9


色々問題があるらしい

42(-_-)さん:2017/04/03(月) 00:43:32 ID:???0
Go が他の多くの言語での非同期プログラミングよりも優れている理由 - Qiita
http://qiita.com/methane/items/5ad7c092c0d426db4ab5

Go言語のFunctional Option Pattern - Qiita
http://qiita.com/weloan/items/56f1c7792088b5ede136


あとで読む

43ひきぷろ ◆SVQfrniSJY:2017/04/14(金) 15:42:36 ID:???0
Go言語のヒープに確保するデータの初期化コストについて調べてみた(Go1.8.1版) - Shogo's Blog
https://shogo82148.github.io/blog/2017/04/13/go1-8-allocation/

44(-_-)さん:2017/12/06(水) 21:30:10 ID:ul7fCHTs0
Goroutineハンターが過労死する前に - Qiita
https://qiita.com/i_yudai/items/3336a503079ac5749c35

45(-_-)さん:2017/12/06(水) 21:33:23 ID:ul7fCHTs0
「goroutine leak」でググるといくつか出てくる


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板