Photo by waferboard
こんにちは。谷口です。
プログラミングをこれから学ぼうとしている方や、これから研修や実務に入る新人エンジニアの皆さんの中には「Javaを学習したい」という方も多くいらっしゃるかと思います。
Javaは、1990年代前半にサン・マイクロシステムズ(2010年オラクルにより吸収合併)でジェームズ・ゴスリン、ビル・ジョイらによって開発されました。
Java開発の求人は、これまでは金融関係のシステム(ATM等)などの比較的大規模開発案件が中心でしたが、近年ではAndroidのネイティブアプリ開発も増えてきています。
Javaを習得できれば、Webサービスだけではなく組み込み系やデスクトップアプリなど、大小さまざまなシステムで活用できます。OSに依存せず、ライブラリも豊富なので開発の幅が広く、有名なサービスではTwitterやEvenoteでもJavaが使用されています。また、最近はJavaを使った機械学習も行われています。
そこで今回は、プログラミング未経験~初心者の方が、なるべくコストをかけずにJavaに触れられて、学習に役立てられるコンテンツを10件ご紹介していきます。
また、paizaラーニングでもJavaの講座を公開しております。
https://paiza.jp/works/java/primer
1本あたり約3分のレッスン動画と練習問題で、プログラミングの基本を手順を追って学べます。ブラウザさえあればすぐに学習を始められますので、ぜひご利用ください。
■プログラミング経験ゼロからJavaを覚えたい人
◆1.ドットインストール
料金:無料(プレミアム会員は有料)
http://dotinstall.com
Javaプログラムの書き方や実行環境の作り方などが動画で学べます。実際に独学でプログラミングを始めたという人の中には、とりあえずドットインストールから学習を始めたという方も多いです。「実際のコードの書き方から学びたい!」という方や、「本当はスクールに通いたいけど費用が……」という方は、一度動画を見てみてはいかがでしょうか。
◆2.Java初心者入門講座
料金:無料
http://sunjava.seesaa.net
Javaの環境設定や基礎的なプログラミングの概念から学べるWebサイトです。初心者向けのサンプルプログラムから本格的なアプリ開発まで学べます。クラスやメソッド、配列、APIの使い方についても解説されています。
◆3.Let'sプログラミング
料金:無料
http://www.javadrive.jp
Let'sプログラミングでは、変数や演算子、条件文等のプログラミングの基礎的な概念から解説されているサイトです。
実際のサンプルコードをまじえて、例えば「for文はこういった時に使うんですよ」といったことから教えてくれますので、プログラミング自体が初心者の方でも学習しやすいかと思います。
さらには応用編のページも充実していますので、自分の学習レベルに合わせて中・上級者になっても使えるサイトだと思います。
◆4.マンガで分かる Java入門講座
料金:無料
http://manga.crocro.com/?cat=java&pg=index
「学習サイトや本で挫折した……」という方や、「プログラミングはハードルが高い……」という方に最初の一歩としておすすめなのが、マンガで分かるJava入門講座です。Javaの基礎が漫画を使って解説されているので、一通り読むとJavaの概念についてが学べるようになっています。
◆この段階で書籍を購入するなら……
◇5.スッキリわかるJava入門 第2版
定価:¥2,808
- 作者: 中山清喬,国本大悟
- 出版社/メーカー: インプレス
- 発売日: 2014/08/07
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (19件) を見る
初心者とベテランエンジニアのやりとりを通してJavaの書き方、そしてオブジェクト指向についてが解説されています。ページ数は多いですが、イラストも多く、クラスやインスタンスが一体何なのか、どうして必要なのかといったことも丁寧に説明されているので、Javaを勉強するにあたって「何か最初の1冊を購入したいな~」という方にはおすすめです。
初心者向けなので「既に実務でJava開発してます」というような方には物足りないかもしれませんが、「何となくJavaを使っているけどいまいち分からない部分も多い……」「独学である程度学習してみたけど途中で挫折してしまったので学び直したい……」といった方にもお勧めです。
■実際にJavaのコードを書いて動かしてみたい人
◆6.paiza.IO
料金:無料
https://paiza.io/
paiza.IOは、ブラウザ上でコードが書けて、書いたコードをその場で実行できるオンラインプログラム実行環境です。面倒な環境構築なしに、本に載っていたコード、ネット上で他の人が公開していたコードなどをオンラインで実行して結果を見ることができます。ブログパーツとして使えたり、GitHub(Gist)連携をしたりもできますので、ぜひpaiza.IOでどんどんコードを書いてみてください!
詳しくはこちらの記事をごらんください。
24のプログラミング言語がブラウザで即実行できる『paiza.IO』 - paiza開発日誌
コードをリプライとして飛ばすと結果を返信してくれるツイッターアカウントで遊ぶこともできます。
Twitterでプログラムコードを実行!結果を返信してくれるpaiza_run - paiza開発日誌
■基礎的なコードが書けるようになってきた人
◆7.paizaのスキルチェック問題
料金:無料
http://paiza.jp
paizaでは、コーディングスキルをはかるコーディング問題の結果により、S・A・B・C・D・Eの6段階でランクが分かります。ぜひ問題を解いて、ランクアップを目指してみてください!プログラミング業務経験のない方でも、Dランクが取得できると、プログラミングの基礎的な概要は理解できているということになります。
■paizaでDランク以上が取得できた人
◆8.Oracle Technology Network/Java
料金:無料
http://www.oracle.com/technetwork/jp/java/index.html
コードが書けるようになってきたら、分からないことはオラクル公式のドキュメントを読んで調べるということも必要だと思います。本来は最初に公式のドキュメントをご紹介すべきなのかもしれませんが、他の言語でプログラミングをした経験がある方ならいざ知らず、経験ゼロの方がいきなり読むというのは大変だと思いますので、ある程度の基礎が身についてから開いてみるのがよいのではないでしょうか。
◆この段階で書籍を購入するなら……
◇9.Effective Java 第2版
定価:¥3,888
EFFECTIVE JAVA 第2版 (The Java Series)
- 作者: Joshua Bloch,柴田芳樹
- 出版社/メーカー: 丸善出版
- 発売日: 2014/03/11
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (12件) を見る
Javaのよりよい使い方が学べる実践的な書籍となっていますので、「Javaは書けるけど、正しく効率的な書き方ができているかというと自信はない……」という方には非常によい1冊だと思います。
Javaエンジニアの中にはこの本を必読書として掲げている方も多くいらっしゃいます。
■JavaでAndroidアプリ開発がやりたい!という方
◆10.Androidで動く携帯Javaアプリ開発入門
料金:無料
http://www.atmarkit.co.jp/fsmart/index/android.html
Javaを習得して、特に「Androidアプリを開発したい!」という方に、@ITが連載している入門記事です。
「Androidアプリとはそもそも何なのか」という基礎知識から開発環境の構築等、Javaでアプリ開発をする際の基礎からが解説されています。
■まとめ
最初に書きましたとおり、Javaは開発の幅が非常に広いので、習得できればエンジニアとしての対応範囲も格段に広げることができます。興味のある方は、学習サイトでも、書籍でも、自分が気になるところから挑戦して、ぜひともJavaに触れてみてください!
さらに、勉強してある程度の基礎が身につきましたら、ぜひpaizaでご自分のスキルをはかってみてください!
「paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。
↓詳しくはこちら
そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。