Photo by Tom Woodward
こんにちは。谷口です。
プログラミングをこれから学ぼうとしている方や、これから研修や実務に入る新人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
◆2.The Go Programming Language(日本語訳)
◆3.golang.jp
◆4.お気楽 Go言語プログラミング入門
料金:無料
http://www.geocities.jp/m_hiroi/golang/index.html#abc
Go言語に関する文法の解説や、演習問題などが学べるサイトです。Go言語の基礎から学ぶことができます。
http://www.geocities.jp/m_hiroi/golang/index.html#abc
Go言語に関する文法の解説や、演習問題などが学べるサイトです。Go言語の基礎から学ぶことができます。
◆5.ドットインストール
料金:無料(プレミアム会員は月額¥880)
http://dotinstall.com
動画でプログラムの書き方や実行環境の作り方等が学べるドットインストールです。実際に独学でプログラミングを始めたという人の中には、とりあえずドットインストールから学習を始めたという方も多いです。「実際のコードの書き方から学びたい!」という方や、「本当はスクールに通いたいけど費用が……」という方は、一度ドットインストールの動画を見てみてはいかがでしょうか。
http://dotinstall.com
動画でプログラムの書き方や実行環境の作り方等が学べるドットインストールです。実際に独学でプログラミングを始めたという人の中には、とりあえずドットインストールから学習を始めたという方も多いです。「実際のコードの書き方から学びたい!」という方や、「本当はスクールに通いたいけど費用が……」という方は、一度ドットインストールの動画を見てみてはいかがでしょうか。
■実際にGo言語のコードを書いて動かしてみたい人
◆6.paiza.IO
料金:無料
https://paiza.io/
paiza.IOは、ブラウザ上でコードが書け、書いたコードをその場で実行出来るオンラインプログラム実行環境です。面倒な環境構築なしに、例えば本に載っていたコード、ネット上で他の人が公開していたコード等をオンラインで実行して結果を見ることができます。ブログパーツとして使えたり、GitHub(Gist)連携なんかもできますので、ぜひpaiza.IOでどんどんコードを書いてみてください!
https://paiza.io/
paiza.IOは、ブラウザ上でコードが書け、書いたコードをその場で実行出来るオンラインプログラム実行環境です。面倒な環境構築なしに、例えば本に載っていたコード、ネット上で他の人が公開していたコード等をオンラインで実行して結果を見ることができます。ブログパーツとして使えたり、GitHub(Gist)連携なんかもできますので、ぜひpaiza.IOでどんどんコードを書いてみてください!
詳しくはこちらの記事をごらんください。
コードをリプライとして飛ばすと結果を返信してくれるツイッターアカウントで遊ぶこともできます。
◆7.A Tour of Go(英語)
◆8.Go Playground
■基礎的なコードが書けるようになってきた人
◆9.paizaのスキルチェック問題(※β版)
料金:無料
http://paiza.jp
paizaでは、コーディングスキルをはかるコーディング問題の結果により、S・A・B・C・D・Eの6段階でランクが分かります。ぜひ問題を解いて、ランクアップを目指してみてください!プログラミング業務経験のない方でも、Dランクが取得できると、プログラミングの基礎的な概要は理解できているということになります。
http://paiza.jp
paizaでは、コーディングスキルをはかるコーディング問題の結果により、S・A・B・C・D・Eの6段階でランクが分かります。ぜひ問題を解いて、ランクアップを目指してみてください!プログラミング業務経験のない方でも、Dランクが取得できると、プログラミングの基礎的な概要は理解できているということになります。
※β版の言語は、一度別の言語で解いた問題であれば挑戦できます。
◆10.Golang JPコミュニティ
料金:無料
https://plus.google.com/communities/107075098212007233819
日本のGo言語のコミュニティです。こういったところに入って疑問に思うところを質問してみるのもいいかと思います。また、Go言語に関するイベントや勉強会の情報も共有されますので、「これから本格的にGo言語で開発していくぞ!」という方は登録されるとよいかと思います。
https://plus.google.com/communities/107075098212007233819
日本のGo言語のコミュニティです。こういったところに入って疑問に思うところを質問してみるのもいいかと思います。また、Go言語に関するイベントや勉強会の情報も共有されますので、「これから本格的にGo言語で開発していくぞ!」という方は登録されるとよいかと思います。
■まとめ
Go言語の文法はC言語に似ているところが多いですが、オブジェクト指向の考え方を採用していたり、メモリーの確保や解放を明示的に行う必要がなかったり、データ型のエラーがコンパイル時に表示されるのでその時点で修正ができたりするといったメリットがあります。
さらに、勉強してある程度の基礎が身につきましたら、ぜひpaizaでご自分のスキルをはかってみてください!
paizaではGo言語エンジニアの求人も多数掲載しておりますので、ぜひごらんくださいね!
■paiza動画ラーニングについて
paizaには、オンラインでプログラミング学習ができるパイザ・ラーニングという無料学習コンテンツがございます!現在、PHP・Ruby・Pythonの入門編を学ぶことができますが、対応言語は今後もどんどん追加される予定となっています。
プログラミング未経験の方でも、「やさしく・楽しく・わかりやすい1本約3分のレッスン動画」 や 「ブラウザ上でコードを書いて実行できるオンライン実行環境」「複数の練習問題」で、未経験者でも無理なく学習を続けることができます。
paizaではITエンジニアとしてのスキルレベル測定(9言語に対応)や、プログラミング問題による学習コンテンツ(paiza Learning)を提供(こちらは21言語に対応)しています。テストの結果によりS・A・B・C・D・Eの6段階でランクが分かります。自分のプログラミングスキルを客観的に知りたいという方は是非チャレンジしてみてください。
また、paizaのオンラインでプログラミング学習ができるパイザ・ラーニングに、この度動画で学習できるレッスンが追加されました。動画を見たり補足テキストを読んだりしながら、自由にコーディングをして実行結果まで確認することができます!レッスンは今後どんどん追加されていく予定ですので、ぜひプログラミング学習に、教育に、お気軽にご活用いただければと思います!
0 件のコメント:
コメントを投稿