2017年4月19日水曜日

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


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でどんどんコードを書いてみてください!
詳しくはこちらの記事をごらんください。
コードをリプライとして飛ばすと結果を返信してくれるツイッターアカウントで遊ぶこともできます。

◆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動画ラーニングについて

f:id:paiza:20160307113923p:plain
paizaには、オンラインでプログラミング学習ができるパイザ・ラーニングという無料学習コンテンツがございます!現在、PHPRubyPythonの入門編を学ぶことができますが、対応言語は今後もどんどん追加される予定となっています。
プログラミング未経験の方でも、「やさしく・楽しく・わかりやすい1本約3分のレッスン動画」 や 「ブラウザ上でコードを書いて実行できるオンライン実行環境」「複数の練習問題」で、未経験者でも無理なく学習を続けることができます。



paizaではITエンジニアとしてのスキルレベル測定(9言語に対応)や、プログラミング問題による学習コンテンツ(paiza Learning)を提供(こちらは21言語に対応)しています。テストの結果によりS・A・B・C・D・Eの6段階でランクが分かります。自分のプログラミングスキルを客観的に知りたいという方は是非チャレンジしてみてください。
また、paizaオンラインでプログラミング学習ができるパイザ・ラーニングに、この度動画で学習できるレッスンが追加されました。動画を見たり補足テキストを読んだりしながら、自由にコーディングをして実行結果まで確認することができます!レッスンは今後どんどん追加されていく予定ですので、ぜひプログラミング学習に、教育に、お気軽にご活用いただければと思います!

HTML5&CSS3学習用 BOX1-6 石塚 正浩

プログラムソースコード1
https://ide.c9.io/nicoishizuka/box1-6

実行結果1
https://box1-6-nicoishizuka.c9users.io/step1-6_p46.html

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
プログラムソースコード2
https://ide.c9.io/nicoishizuka/book-html

実行結果2
https://book-html-nicoishizuka.c9users.io/book-html.html

2017年2月6日月曜日