11
なぜGo言語なのか 僕がGo言語を使う理由 Devfest Japan 2013 - Google I/O 報告会 GDG京都 プレイベント LT GDG神戸 野田悟志@scarviz

2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

Embed Size (px)

Citation preview

Page 1: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

なぜGo言語なのか

僕がGo言語を使う理由

Devfest Japan 2013 - Google I/O 報告会GDG京都 プレイベント LT

GDG神戸 野田悟志@scarviz

Page 2: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

Go言語とは

① シンプルに書ける

② 生産性が高い

③ 処理が速い

Page 3: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

() はいらない{ は必ず同じ行に

} の後に続けて else を書く

; はいらない

Go言語とは

http://play.golang.org/p/zBuGUOFqG9

変数宣言

普段は「:=」で型推論で宣言

Page 4: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

Go言語とは

● メモリ管理で時間を取られない

 ネイティブ言語だが、ガベージコレクションがある

 ポインタを扱わない

● 並列処理(ゴルーチン)が容易

 関数の前に「go」を付けるだけ

● 必要な機能が用意されている

 通信処理など特にサーバサイドに強い

Page 5: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

Go言語とは

● 実行速度

 GC持ちで、C言語より10~20%遅い程度(※)

● コンパイル速度

 インクルードファイルがあるC言語よりも速い

※ 2009/11/11 Go言語公開後のロブ・パイク氏の話http://www.atmarkit.co.jp/news/200911/11/go.html

Page 6: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

Go言語とは

Go言語は

他の言語の

「イケてない部分」

を取り払った

「イケてる言語」と言いたいのですが・・・

Page 7: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

なぜGo言語は流行らないか

● 仕事がない

● 今使っている言語で十分

● ゴーファーが可愛すぎて、いじわるしてる

Page 8: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

僕がGoをやる理由、きっかけ

C#がメインの僕には

● ネイティブ言語でGCがある

 メモリ処理で困らない

● シンプルに書ける

 すぐ書けるしバグも少なくなる

● サーバサイドの選択肢が増える

 Linuxサーバが使える

Page 9: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

参考になるものがない、しかし

参考文献、参考サイトがめちゃくちゃ少ない

● ねえねえ、これ知ってる?の心理 オープンソースなので、ソースを読めば良い 情報公開で、僕得、情報増えて、みんな得

もしかすると

あなたが知ったことは

誰も知らないことかもしれない

Page 10: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

さらに進化2009年11月 Go公開

2012年03月 Go1.0リリース

2013年5月13日Go1.1がリリース

Go1.0から最大30%~40%のパフォーマンス改善

「C言語より10~20%遅い程度」が

C言語より速くなる・・・かも?

Page 11: 2013/05/25 GDG京都 IO報告会 LT 「なぜGo言語なのか」

最後に「言語は手段であって、目的ではない」

Go言語を使うと

① シンプルに書ける

② 生産性が高い

③ 処理が速い

Go言語だと作りたいものが楽に作れる!