勉強会の基本情報
- 【日 時】2016/05/24(火) 19:30 〜 21:30
- 【会 場】レバレジーズ本社( 渋谷ヒカリエ 17F )(東京都渋谷区渋谷2-21-1)
- 【参加費】無料
- 【主 催】ヒカ☆ラボ
- 【申し込み】https://atnd.org/events/76480
概要
- Go言語の歴史
- Go言語の特徴
- 勉強会に紹介された資料とサイト
内容
歴史
- 誕生
- 2009年に、googleさんによって、開発された
- LinuxとMac OS Xのみしかサポートしていなかった
- 1.0リリース
- 2012年3月
- Windowsもサポートされている
- 2011年5月10日に公開された Google App Engine 1.5.0 でも、Go言語がサポートされている
- 最新バージョン
- 1.6.2
- 2016年4月20日にリリースされた
- トレンド
- ランキング
- 42位(2016.05)
- http://www.tiobe.com/tiobe_index
特徴
- コンパイル型言語
- 構文チェック、依存関係チェック、コード最適化
- 変数の型、インポートして未使用のライブラリ、引数と戻り値の型、使われてない変数、etc...
- 依存するライブラリも含めてビルドファイルを作成するので、別環境に持っていってもすぐに働かすことができる
- Go言語のコンパイルは早い - Goの標準ライブラリ全体でも9秒
- go runコマンドを実行すると、コンパイルと実行を一度に行うことができる
- 高いパフォーマンス
- 実際にAPIのバックエンドやバッチ処理などパフォーマンスがネックになる部分にGo言語として採用されている
- 型の扱い
- 「楽しく」「スマートに」コーディング
- 行末のセミコロンが不要
- ifの後のカッコが不要
- ループはforのみで行い
- 関数が複数の戻り値をサポートする
- 型推論を利用した初期化が可能
- 並列処理のサポート
- ゴールーチンやチャンネルを使って、簡単に並列処理を実装できる
- マルチコアプログラミングのサポート
- Go言語実行時に使用するコア数を指定できる
- ソースコードのフォーマット
- go fmtコマンドを実行することで、コードを整形してくれる
資料とサイト
- 公式サイト/日本語訳サイト
- チュートリアル
- リファレンス
- 本
- package manager
感想
- Go言語は、パフォーマンスが高くて、並列処理の実装しやすい
- 現在は、よく使っているrubyは、上記のメリットがないはずと思う
- erlangなど並列処理しやすい言語があるが、googleによって開発されたGo言語は好き(googleファン)