paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」(https://paiza.jp ギノ株式会社)の開発者が開発の事、プログラミングネタ、ITエンジニアの転職などについて書いています。

初心者でもほぼ無料でGo言語を勉強できるコンテンツ10選

f:id:paiza:20161207174136j:plain
Photo by Tom Woodward
f:id:paiza:20140916135428p:plainこんにちは。谷口です。

プログラミングをこれから学ぼうとしている方や、これから研修や実務に入る新人ITエンジニアの皆さんの中には「Go言語を学習したい」という方も多くいらっしゃるかと思います。

Go言語は、2009年にGoogleにより発表されたオープンソースプログラミング言語です。C言語の開発者であるケン・トンプソン、UTF-8の開発者であるロブ・パイクなど、そうそうたるメンバーによって開発されました。

Go言語の特徴としては、ほかの言語が持つような機能の多くを削り、かなりシンプルな言語になっているという点が上げられます。

例えば繰り返し処理にfor文はありますが、doやwhileはありません。条件分岐の処理は、ifステートメントが複数行に渡った際に見やすいよう、ifの波括弧が必須となっています。

Go言語は、こうしたコード上の表現を制限することで、開発者による書き方のばらつきも抑えられるといった長所もあります。

さらにgoroutineやchannelといったGo言語特有の機能を用いて、簡単かつ効率的に並列処理を記述することができます。

また、Go言語では開発を助けるさまざまなパッケージやツールが最初から用意されており、各エディタやツールのためのプラグインなども公開されているため、すぐに開発を始めることができます。

国内では、サイバーエージェントやLINE、カヤックもGo言語を採用しています。

今回は、プログラミング未経験~初心者の方が、なるべくコストをかけずにGo言語に触れられて、学習に役立てられるコンテンツを10件ご紹介していきます。

■プログラミング経験ゼロからGo言語を覚えたい人

◆1.The Go Programming Language

料金:無料
http://golang.org
f:id:paiza:20150513173102p:plain
Go言語の公式サイトです。最新情報等も見ることができますので、英語がOKな方はこちらからご覧になるとよいかと思います。

◆2.The Go Programming Language(日本語訳)

料金:無料
http://golang-jp.org
f:id:paiza:20150513173756p:plain
公式の日本語訳サイトです。

◆3.golang.jp

料金:無料
http://golang.jp/
f:id:paiza:20150513173348p:plain
こちらも公式の日本語訳サイトです。

◆4.お気楽 Go言語プログラミング入門

料金:無料
http://www.geocities.jp/m_hiroi/golang/index.html#abc
f:id:paiza:20150513175353p:plain
Go言語に関する文法の解説や、演習問題などが学べるサイトです。Go言語の基礎から学ぶことができます。

◆5.ドットインストー

料金:無料(プレミアム会員は月額¥880)
http://dotinstall.com
f:id:paiza:20150204142015p:plain
動画でプログラムの書き方や実行環境の作り方等が学べるドットインストールです。実際に独学でプログラミングを始めたという人の中には、とりあえずドットインストールから学習を始めたという方も多いです。「実際のコードの書き方から学びたい!」という方や、「本当はスクールに通いたいけど費用が……」という方は、一度ドットインストールの動画を見てみてはいかがでしょうか。

■実際にGo言語のコードを書いて動かしてみたい人

◆6.paiza.IO

料金:無料
https://paiza.io/
f:id:paiza:20150205121058p:plain
paiza.IOは、ブラウザ上でコードが書け、書いたコードをその場で実行出来るオンラインプログラム実行環境です。面倒な環境構築なしに、例えば本に載っていたコード、ネット上で他の人が公開していたコード等をオンラインで実行して結果を見ることができます。ブログパーツとして使えたり、GitHub(Gist)連携なんかもできますので、ぜひpaiza.IOでどんどんコードを書いてみてください!

詳しくはこちらの記事をごらんください。


24のプログラミング言語がブラウザで即実行できる『paiza.IO』 - paiza開発日誌

コードをリプライとして飛ばすと結果を返信してくれるツイッターアカウントで遊ぶこともできます。


Twitterでプログラムコードを実行!結果を返信してくれるpaiza_run - paiza開発日誌

◆7.A Tour of Go(英語)

料金:無料
http://go-tour-jp.appspot.com/#1
f:id:paiza:20150513175923p:plain
Go言語のチュートリアルを実行できるサイトです。

◆8.Go Playground

料金:無料
http://play.golang.org/
f:id:paiza:20150513180012p:plain
Go言語をWeb上で実行できるサイトです。

■基礎的なコードが書けるようになってきた人

◆9.paizaのスキルチェック問題(※β版)

料金:無料
http://paiza.jp
f:id:paiza:20150205133638p:plain
paizaでは、コーディングスキルをはかるコーディング問題の結果により、S・A・B・C・D・Eの6段階でランクが分かります。ぜひ問題を解いて、ランクアップを目指してみてください!プログラミング業務経験のない方でも、Dランクが取得できると、プログラミングの基礎的な概要は理解できているということになります。

※β版の言語は、一度別の言語で解いた問題であれば挑戦できます。

◆10.Golang JPコミュニティ

料金:無料
https://plus.google.com/communities/107075098212007233819
f:id:paiza:20150513175614p:plain
日本のGo言語のコミュニティです。こういったところに入って疑問に思うところを質問してみるのもいいかと思います。また、Go言語に関するイベントや勉強会の情報も共有されますので、「これから本格的にGo言語で開発していくぞ!」という方は登録されるとよいかと思います。

■まとめ

Go言語の文法はC言語に似ているところが多いですが、オブジェクト指向の考え方を採用していたり、メモリーの確保や解放を明示的に行う必要がなかったり、データ型のエラーがコンパイル時に表示されるのでその時点で修正ができたりするといったメリットがあります。

さらに、勉強してある程度の基礎が身につきましたら、ぜひpaizaでご自分のスキルをはかってみてください!

paizaではGo言語エンジニアの求人も多数掲載しておりますので、ぜひごらんくださいね!


paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

↓詳しくはこちら
paiza.jp

そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
paiza.jp
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

ITプログラマ・エンジニア向け転職・就活・学習サービスのpaiza